我想了解如何在Riak節點上正確備份Bitcask。我認爲Bitcask的優勢之一就是可以在節點運行時運行文件系統備份。查看官方文檔,它說在執行備份之前始終停止節點,即使在使用Bitcask後端時也是如此。使用tar,rsync的或CP運行節點的備份Riak Bitcask後端
副本bitcask目錄:
我可以看到在做備份的3種方式,從更容易更復雜的排序。
節點運行時的快照文件系統。
停止節點,快照文件系統,啓動節點。
那麼,選項1是否能成功備份bitcask,否則會有數據丟失的風險?如果是這樣,選項2呢?
編輯如下。這是迴應克雷格的回答:
閱讀Bitcask「白皮書」它說有內置的壓縮邏輯。但是,我猜Riak可能會在其上添加自己的合併邏輯。
http://basho.com/wp-content/uploads/2015/05/bitcask-intro.pdf
此外,對於1.4.12了Riak官方文檔只說明該節點必須使用性LevelDB後端時,不Bitcask停止。當然,在2.0+版本中可能會發生變化。
http://docs.basho.com/riak/1.4.12/ops/running/backups/
而且也,閱讀最新的官方文檔中的Bitcask後端給我住的備份是可能的印象。
docs.basho.com/riak/kv/2.1.4/setup/planning/backend/bitcask/
如果節點應停止由於合併和壓實。在合併窗口之外的正在運行的節點上備份Bitcask或將合併策略設置爲永遠不會安全?
我理解文檔,但認爲關於Bitcask的一件簡單的事情就是實時備份,它與Riak的「高可用性」目標很好地吻合。但看起來情況並非如此。至少不再是。
我已經更新了我的問題以迴應您的回答。 – Teslan
特斯蘭,建議仍然在Riak的所有版本中,現在您停止節點執行備份,如備份Riak的鏈接中所述。 – Craig
我會接受這種情況。希望它會在即將到來的版本中發生變化。 – Teslan