Hadoop集群的版本 :2.7.1 ElasticSerach集群版本:6.0.1
启动Hive,启动ElasticSerach,去ElasticSerach官网下载:https://www.elastic.co/cn/downloads/past-releases
将下载的zip文件解压缩,拷贝出
elasticsearch-hadoop-6.0.1.jar
拷贝进Hive/lib目录下面
运行hive 的客户端
将es-hadoop的驱动包添加进当前会话中
add jar /usr/hdp/2.4.3.0-227/elasticsearch-hadoop.jar;
创建索引Mapping
PUT http://192.168.1.201:9200/rbc_users
{
"settings": {
"number_of_shards": 3,
"number_of_replicas": 1
},
"mappings": {
"doc": {
"dynamic": "true",
"properties": {
"uid": {
"type": "text"
},
"name": {
"type": "text",
"index": "true",
"analyzer": "ik_max_word",
"search_analyzer": "ik_max_word",
"fields": {
"raw": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
}
}
}
创建 外表
CREATE EXTERNAL TABLE test(
id string,
uid string,
name string)
STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES(
'es.resource' = 'rbc_users/doc',
'es.index.auto.create'='false',
'es.mapping.id' = 'id',
'es.nodes' ='192.168.1.201:9200,192.168.1.202:9200,192.168.1.203:9200,192.168.1.204:9200');