簡體   English   中英

Elasticsearch:在修訂版本上對文檔進行版本控制

[英]Elasticsearch: Versioning a document on revisions

我目前有一個定期修改的文檔,我希望通過保留文檔的每個舊版本來跟蹤文檔。 因此,如果文檔A具有我想要的摘要和更新日期,則在每次更新后,保留先前版本及其更新數據。

問題是我不確定如何有效地做到這一點:

...{
        Title: A
        Summary: {update_date:content, update_date:content, ...}
    }

問題是如果我將密鑰作為值,那么自動生成的模式將把所有日期作為可能的密鑰。 這不是你想要的東西。

所以我的問題是在ElasticSearch中按日期跟蹤所有修訂的最有效方法是什么?

就像與構建索引相關的所有內容一樣,它在很大程度上取決於您想要對數據執行的操作。

通常,保留過去的修訂是為了審計目的,因此它是一個完全不同的查詢流程。 我可能會為活動文檔保留一個索引,並為修訂保留一個單獨的索引(可能有日期分區)。

每次更新都需要更新實時文檔以及在修訂索引中插入新文檔。

還應該注意的是,ElasticSearch 對版本控制有一些原生支持 ,這可能適合您。 我個人使用ES作為索引而不是數據存儲,所以我傾向於丟棄索引並經常重建,這會導致歷史丟失。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM