通过hive外部表将字段索引更改为not_analyzed

时间:2015-08-25 16:37:44

标签: elasticsearch hive kibana

我使用查询通过配置单元将数据索引到ES:

CREATE EXTERNAL TABLE json2 ( time_id_1 STRING, acnt_nm) 
STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES('es.resource' = 'es_testing/test', 'es.nodes' = 'xxx');

insert overwrite table json2 select time_id_1 , acnt_nm from table_x;

我希望我的字符串列acnt_nm“未分析”。 我发现有一种方法可以通过Mapping API设置“index”来实现这一点:“not_analyzed”

我知道这可以通过显式映射来完成。但这非常麻烦,因为每次索引任何新数据之前我都必须这样做。 但我可以通过hive外部表创建命令执行相同的操作吗?

或者只是将所有索引数据的索引编辑为“not_analyzed”。我不可能为每个id单独更改它,因为我有太多它们。

1 个答案:

答案 0 :(得分:0)

为什么你不需要在蜂巢方面进行分析?实际上创建脚本没有任何类型都不起作用。你至少可以设置字符串。 我认为您可以更改es_testing索引的映射,并在该索引中对每个单独的文档执行映射。