使用Hive读写ElasticSearch中的数据

 

去官网下载 elasticsearch-hadoop-5.1.1 解压把把elasticsearch-hadoop-5.1.1.jar包放在了/etc/hive目录下面(放到一个存在的目录,免得各个客户端要创建目录)。

 

更改一下hive配置,2个地方都改一下。 重启生效。

 

HIVE_AUX_JARS_PATH=/etc/hive

 

image

 

 

es原始数据:

 

image

 

 

hive外部表:

 

CREATE EXTERNAL TABLE rule_model_merge (
cookieid string,
name string,
businessId bigint,
id string,
right string,
type string,
updatetime string,
content string
)
STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES(
'es.nodes' = '10.15.46.111:9200,10.15.182.137:9200,10.15.192.236:9200,10.15.148.40:9200,10.15.127.143:9200',
'es.index.auto.create' = 'false',
'es.resource' = 'rule_model_merge',
'es.read.metadata' = 'true',
'es.mapping.names' = 'cookieid:_metadata._id, name:name, businessId:businessId, id:id, right:right ,type:type ,updatetime:updatetime ,content:content');

 

注意字段类型,businessId 用的bigint.

您可以选择一种方式赞助本站