我正在使用 ES 版本 1.5.2,并通过 JEST 包装器使用 JAVA API。我想创建一些渗透查询并将它们存储在索引中。
在某些地方,我看到一种语法表明我可以将渗透查询存储在任何索引中,但类型必须是“.percolator”类型。在其他地方,我看到查询需要存储在一个名为“_percolator”的特殊索引中。
- 渗透查询应该存储在哪里?
- 查询是否应该像普通文档一样保存在索引中?
下面是我尝试过的一段代码,但它不起作用。
SearchSourceBuilder searchSourceBuilder = new SearchSourceBuilder();
searchSourceBuilder.query(QueryBuilders.matchQuery("stock", "apple"));
saveDoc(searchSourceBuilder, "company-apple", "_percolator", "stocks");
public JestResult saveDoc(Object doc, String docId, String indexName, String type) {
Index index = new Index.Builder(doc).id(docId).index(indexName).type(type).build();
return client.execute(index);
}