使用hive访问elasticsearch的数据

1.配置

将elasticsearch-hadoop-2.1.1.jar拷贝到hive/lib

hive -hiveconf hive.aux.jars.path=/usr/local/hive-1.2.1/lib/elasticsearch-hadoop-2.1.1.jar

或者配置:

hive-site.xml

<property>
<name>hive.aux.jars.path</name>
<value>file:///usr/local/hive-1.2.1/lib/elasticsearch-hadoop-2.1.1.jar</value>
<description>A comma separated list (with no spaces) of the jar files</description>
</property>

2.创建外表

CREATE EXTERNAL TABLE achi_ex(

vid string,

dtime timestamp,

platid bigint)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY ‘\t’

LINES TERMINATED BY ‘\n’

STORED BY ‘org.elasticsearch.hadoop.hive.EsStorageHandler’

TBLPROPERTIES(‘es.resource’ = ‘db_1/achi’,

‘es.index.auto.create’ = ‘true’);

*hive 中的timestamp和ES中的date相互映射

3.导入数据

insert overwrite table achi_ex select * from achi;

4.测试

select * from achi_ex limit 10;

错误:

Failed with exception java.io.IOException:org.apache.hadoop.hive.ql.metadata.HiveException: java.lang.ClassCastException: org.apache.hadoop.io.LongWritable cannot be cast to org.apache.hadoop.io.IntWritable

hive表中field类型为int时,映射到es中变成long,所以会报此错误。将hive表中int改为bigint即可。

CREATE EXTERNAL TABLE achi_ex(

vid string,

dtime timestamp,

platid bigint)

ROW FORMAT DELIMITED

FIELDS TERMINATED BY ‘\t’

LINES TERMINATED BY ‘\n’

STORED BY ‘org.elasticsearch.hadoop.hive.EsStorageHandler’

TBLPROPERTIES(‘es.resource’ = ‘db_1/achi’,

‘es.mapping.names’ = ‘vid:vID,dtime:dTime,platid:PlatID

‘);

使用hive访问elasticsearch的数据的更多相关文章

  1. 使用spark访问elasticsearch的数据

    使用spark访问elasticsearch的数据,前提是spark能访问hive,hive能访问es http://blog.csdn.net/ggz631047367/article/detail ...

  2. 使用Hive读取ElasticSearch中的数据

    本文将介绍如何通过Hive来读取ElasticSearch中的数据,然后我们可以像操作其他正常Hive表一样,使用Hive来直接操作ElasticSearch中的数据,将极大的方便开发人员.本文使用的 ...

  3. 解决Hive与Elasticsearch共有库 guava 冲突 NoSuchMethodError

    情况描述 解决方法 方法一:Shade and relocate 简介 Shade Elasticsearch 引入shade ES jar 方法二:修改集群Job配置策略(未实验) 情况描述 使用J ...

  4. Elasticsearch的数据导出和导入操作(elasticdump工具),以及删除指定type的数据(delete-by-query插件)

    Elasticseach目前作为查询搜索平台,的确非常实用方便.我们今天在这里要讨论的是如何做数据备份和type删除.我的ES的版本是2.4.1. ES的备份,可不像MySQL的mysqldump这么 ...

  5. Logstash中如何处理到ElasticSearch的数据映射

    Logstash作为一个数据处理管道,提供了丰富的插件,能够从不同数据源获取用户数据,进行处理后发送给各种各样的后台.这中间,最关键的就是要对数据的类型就行定义或映射. 本文讨论的 ELK 版本为 5 ...

  6. hive 学习系列五(hive 和elasticsearch 的交互,很详细哦,我又来吹liubi了)

    hive 操作elasticsearch 一,从hive 表格向elasticsearch 导入数据 1,首先,创建elasticsearch 索引,索引如下 curl -XPUT '10.81.17 ...

  7. Elasticsearch备份数据

    Elasticsearch备份数据 1.建立备份目录 POST _snapshot/my_backup/ { "type": "fs", "setti ...

  8. Elasticsearch写入数据的过程是什么样的?以及是如何快速更新索引数据的?

    前言 最近面试过程中遇到问Elasticsearch的问题不少,这次总结一下,然后顺便也了解一下Elasticsearch内部是一个什么样的结构,毕竟总不能就只了解个倒排索引吧.本文标题就是我遇到过的 ...

  9. Java访问Elasticsearch报错Request cannot be executed; I/O reactor status: STOPPED

    简介 使用ES过程中遇到一个Request cannot be executed; I/O reactor status: STOPPED 的异常,大概意思是和server端的连接异常终止了.开始以为 ...

随机推荐

  1. 当当网开源Dubbox,扩展Dubbo服务框架支持REST风格远程调用

    当当网近日开源了Dubbox项目,可为Dubbo服务框架提供多项扩展功能,包括REST风格远程调用.Kryo/FST序列化等等. 当当网架构部和技术委员会架构师沈理向InfoQ中文站介绍了Dubbox ...

  2. 墨刀 手机app原型工具

    https://modao.io 并且墨刀对开放项目永久免费!

  3. eclipse中tomcat加gc日志输出

    -XX:ParallelGCThreads=4 -XX:+PrintGCDetails

  4. WCF学习心得------(六)数据协定

    --前言 最近各种事忙的把之前的WCF学习给耽误了一些,今天抽时间把之前的学习内容给总结了一下,因为知识点比较细碎没有做太多的练习示例,只是对其中关键的知识点做了总结,希望可以对大家有所帮助. 第六章 ...

  5. html中间块居中宽度自适应

    说来,这个其实不是个多难的事情,但是,若没有经验或者没有了解过html原数在浏览器中显示的顺序,可能还真是个问题,不知如何调整. 先说明下,在确定了左右两边显示的块的宽度后,再让中间块的宽度自适应,这 ...

  6. PhoneGap原理分析

    PhoneGap提供了Native Api的支持(如:重力感应.相机.联系人.文件.地址位置…), 比如要用js获取本机的联系人,可以用: var options = new ContactFindO ...

  7. [Hibernate] - one to one

    两种不同方式的一对一映射关系: 1)配置文件: hibernate.cfg.xml <?xml version="1.0" encoding="UTF-8" ...

  8. Microsoft SQL Server Management Studio 导出触发器脚本

  9. jsonp的简单例子

    jsonp的简单例子 index.html <!DOCTYPE html> <html> <head> <meta charset="UTF-8&q ...

  10. QT5中的信号与槽与C++ 11的function的配合

    最近将公司的界面开发库从WX转换到了QT,有了信号和槽,原本我们在使用WX的时候,为了使用信号,我们是使用BOOST的signal2库,到了QT有了信号槽,这个就没什么必要了 但是前段时间使用QT发现 ...