Elasticsearch 高级功能:Percolator 与空间搜索
1. Percolator 深入应用
在 Elasticsearch 中,Percolator 注册的查询实际上是文档,我们可以使用普通查询来选择在 percolation 过程中使用哪些存储在.percolator类型中的查询。以下是具体的操作步骤和示例。
1.1 更新映射
为了实现特定的用例,比如根据图书馆的不同分馆筛选用户,我们需要更新映射以包含分馆信息。使用以下命令更新映射:
curl -XPOST 'localhost:9200/notifier/.percolator/_mapping' -d '{ ".percolator" : { "properties" : { "branches" : { "type" : "string", "index" : "not_analyzed" } } } }'1.2 注册查询
注册一个查询,示例中的用户对标题包含 “crime” 的书籍感兴趣,并且希望从 “brA”、“brB”、“brD” 这三个分馆之一借阅:
curl -XPUT 'localhost:9200/notifier/.percolator/3' -d '{ "query" : { "term" : { "title" : "crime