Cassandra
Cassandra 集群儲存
我想試試 Cassandra 集群。我的主要問題是關於可擴展性。
Cassandra 集群中的每個節點都有相同的數據副本。因此,當我總共有 1 TB 並且有 5 個節點時 -> 5TB。
這在某些時候會變得很大。如何擴展 Cassandra 以便分佈式儲存?我需要再次手動分片嗎?
數據會根據表的分區鍵值自動分佈在集群中。因此,您需要注意創建正確的數據模型 - 不要有具有數十萬行等的分區。
如果數據模型是正確的,那麼您可以通過添加新節點來擴展 Cassandra,然後數據將在節點之間重新分配。
Cassandra 確實使用 murmur3partitioner 在集群節點之間以分佈式方式儲存其數據(您的 1 tb 將在每個節點上分配 0.2 tb)。如果您不希望 1 tb 數據變為 5 tb,請將複製因子從 5 更改為所需的較低值並在所有節點上執行 nodetool cleanup。