0

我在我的索引上启用了自动 _timestamp,但是每次在 _bulk 请求(或定期更新)期间更新索引时,时间戳也会更新。这是有道理的。

我想知道是否有办法在更新后保留原始时间戳?所以我们只能看到版本 1 的时间戳,无论它更新到新版本多少次。

我有超过 400 万个索引和 1000 个块的批量更新,所以我不想遍历每一个项目来比较时间戳。

有小费吗?

4

1 回答 1

0

对于将来遇到此问题的任何人,我最终将批量更新与脚本结合使用来更新日期。这只发生在创建索引并在更新期间单独放置时。我不确定这是否是最优雅的解决方案,但它有效。

{ "update": {"_id" : "1"} },
{ "script": "", "upsert" : {"og_index_date" : 20130826}},
{ "update": {"_id" : "1"} },
{ "doc": {"field1" : "one", "field2": "two"}, "doc_as_upsert" : True }

即使您将写入次数加倍,它也会在各个版本中保持此日期。

于 2013-08-27T00:27:19.463 回答