是否可以注册查询(如渗透过程)并按名称调用它们来执行它们。我正在构建一个应用程序,让用户保存与标签关联的搜索查询。我想将过滤器生成的查询保存在 ES 中。
如果我将查询保存在索引中,我必须先调用 ES 来检索查询,提取包含查询的字段,然后再次调用 ES 来执行它。我可以一次通话吗?
另一种解决方案是注册查询(带有用户标识符的_percolator标签:/_percolate/transaction/user1_label1
{
"userId": "user1",
"query":{
"term":{"field1":"foo" }
}
}
当有一个新文档时,在非索引模式下使用过滤器(根据 userId 过滤)来检索哪个查询匹配,然后通过添加字段 "label":["user1_label1", "user1_label2"] 来更新文档,最后索引文档。所以标签是在索引时完成的。
你怎么看 ?提前致谢。