弹性搜索和Java-需要获取索引及其可用于该特定索引的相应类型

时间:2018-07-24 11:25:36

标签: java elasticsearch

我目前正在开发一个Java应用程序,该应用程序使用HTTP连接到弹性搜索并获取映射中的所有索引及其对应类型-Key(index)和Arraylist(type)。请帮助

1 个答案:

答案 0 :(得分:0)

一个巧妙的技巧是在_index和_type字段上使用术语聚合:

GET _search { "size": 0, "aggs": { "byindex": { "terms": { "field": "_index", "size": 10000 }, "aggs": { "by_type": { "terms": { "field": "_type", "size": 10 } } } } } }

或者,您可以使用别名api,该API返回所有别名及其指向的索引。对于没有别名的索引,别名就是索引名称。

还请注意,从v6版开始,不再允许每个索引具有一种以上类型。类型将在以后的版本中完全删除。

您可以使用自己喜欢的http库在Java或Java的官方elasticsearch http客户端或几种替代方法之一中进行此操作。