我正在使用Elasticsearch Hive集成,因此我可以从Hadoop表中查询,在数据不良时发送警报(使用ElastAlert),以及在Kibana上显示。
这就是我创建Elastic表的方法:
CREATE EXTERNAL TABLE my_elastic_table (
timestamp BIGINT,
count BIGINT )
STORED BY 'org.elasticsearch.hadoop.hive.EsStorageHandler'
TBLPROPERTIES('es.resource' = 'my_index/my_type);
我用:
插入Elastic Hive表INSERT OVERWRITE TABLE my_elastic_table
SELECT {something} FROM my_hadoop_table;
然而,它并非OVERWRITE
elastic_table,它实际上附加到elastic_table。所以我试着TRUNCATE elastic_table,它给了我以下错误:
FAILED: SemanticException [Error 10146]: Cannot truncate non-managed table elastic_table.
所以我问是否有人知道如何截断,更新或覆盖Elastic Hive表。或者有更好的方法来处理这类问题。谢谢!