弹性搜索不一致的索引计数

时间:2015-03-31 08:59:11

标签: elasticsearch

我正在为一个3000万行的大型数据集编制索引并在每个重新索引之后(使用JDBC河流)我发现索引的总大小不一致。

我正在使用: curl -XGET'http://localhost:9200/index_name/_count'

每个重新索引后,结果会有多达100,000个结果。

我在日志中看不到任何索引错误。

2 个答案:

答案 0 :(得分:0)

一种可能性是您的refresh_interval设置设置为较大的数字。此选项用于减少磁盘IO。索引结果可能仅在此间隔到期后可用。

您还可以使用刷新API强制进行刷新。像这样:

curl -XPOST 'http://localhost:9200/index_name/_refresh'

有关详细信息,请参阅elastic documentation

答案 1 :(得分:0)

ElasticSearch用于计算索引中条目数的算法执行有界内存使用中的操作。这导致近似的结果。要提高精度,可以设置

precision_threshold : AMOUNT_OF_ERROR

弹性搜索仍然存在5%的误差范围