我正在与Lucene合作。我的工作是查询和执行搜索。我想知道过滤器的使用。
答案 0 :(得分:3)
过滤器与查询的不同之处在于可以缓存过滤器。基本上,当您使用过滤器时,Lucene会存储一个位图,如果第i个文档与过滤器匹配,则位i为1,否则为0。
如果您搜索与查询和过滤器匹配的所有内容,它将获得查询结果,并使用缓存过滤器按位-EN。在某些情况下,这可以提高性能。
基本上,如果您有一个或两个条件需要适用于几乎所有搜索(例如隐藏所有“高安全性”文档),那么您可能需要查看过滤器。否则,只是执行正常查询应该会更好,因为过滤器会占用大量内存。