2016-07-14 55 views
0

Elasticsearch显示查询的错误数据。 我在指出错误的方式相同的查询,第一个是Elasticsearch为相似查询显示错误数据

**GET salesindex/salesmarket/368** 

,并导致显示我更新 “DeletedID” 正确的数据:2,

POST salesindex/salesmarket/_search 
{ "query":{"bool": {"must": [{"term": {"salesId": 368}}]}}} 

我错了结果为相同的数据 “DeletedID”:1,

然后我清除缓存并尝试,它显示相同的结果,但一个在2-3分钟内显示正确的结果。 salesId是我的文档Id 我无法低估弹性搜索的这种行为。

回答

0

在情况一中,您可以通过文档的id进行GET,以便即时访问。但是,如果在查询情况2时执行查询,则必须等待刷新。如果没有刷新,新的或更新的文档尚未添加到Lucene缓存。您也可以尝试使用相同的方法进行显式刷新。被警告,这通常不是你想要的生产,除非更新量不高。

简而言之: GET通过ID:实时 搜索:近实时

希望帮助

+0

我刷新指数每当任何变化在数据库中出现,所以对于每个散后我刷新索引。但它不工作(我刷新,因为我需要立即改变)。谢谢 –