gpt4 book ai didi

elasticsearch - Elasticsearch索引删除后速度太快?

转载 作者:行者123 更新时间:2023-12-03 02:02:32 26 4
gpt4 key购买 nike

我使用一个简单的脚本,将数据从MySQL表导出到ES类型。 MySQL表和ES类型之间的区别在于,MySQL表可容纳100000种产品,其中实际只使用500种产品,而我需要保持ES类型的整洁,以便它仅容纳实际使用的500种产品。

为此,每次运行导出脚本时,我都会为要索引的每个文档添加一个具有唯一值的名为“batch”的字段。假设我昨天运行了批处理= 1的导出,今天运行了批处理= 2的导出。 ES中的结果现在是:

Name             Batch
Document 1 2
Document 2 2
Document 3 1
Document 4 2
Document 5 2

现在,我将运行ES查询以查找所有不具有Batch = 2的文档,然后将其删除。

问题是,即使我在索引之后执行DELETE,ES仍在删除不应删除的文档。我感觉到删除操作是在索引操作完成之前执行的,即使我在删除操作之前发送了索引操作。

也许这听起来很愚蠢,但我不知道还有什么可能。

更新我可以确认确实是这种情况;在索引解决了该问题之后,添加了一个要休眠几秒钟的命令。但是我想知道是否有更好的方法来解决这个问题?

最佳答案

实际上,Elasticsearch在所谓的近实时索引中。

看看Elasticsearch的这一部分权威指南

https://www.elastic.co/guide/en/elasticsearch/guide/current/near-real-time.html

如果您需要“刷新”,则可以在以下页面中使用它的刷新API(在同一页面中):
POST /_refresh
但是它有缺点。

关于elasticsearch - Elasticsearch索引删除后速度太快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30686667/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com