這聽起來像一個愚蠢的問題,但我仍然希望有人/專家接聽/證實了這一點。卡桑德拉寫入吞吐量和可擴展性
可以說我有一個3節點集羣卡桑德拉。可以說我有一個數據庫和一個表。對於這個單獨的表可以說我得到了3個節點cassandra的1K寫/秒的吞吐量。如果明天我在這張表上的寫入負載增加/縮放到10K或20K,我能通過增加10倍或20倍的簇大小來處理這種寫入負載嗎?
我卡桑德拉的理解說,這是可能的(如Cassandra是讀寫可擴展),但希望專家確認。
這聽起來像一個愚蠢的問題,但我仍然希望有人/專家接聽/證實了這一點。卡桑德拉寫入吞吐量和可擴展性
可以說我有一個3節點集羣卡桑德拉。可以說我有一個數據庫和一個表。對於這個單獨的表可以說我得到了3個節點cassandra的1K寫/秒的吞吐量。如果明天我在這張表上的寫入負載增加/縮放到10K或20K,我能通過增加10倍或20倍的簇大小來處理這種寫入負載嗎?
我卡桑德拉的理解說,這是可能的(如Cassandra是讀寫可擴展),但希望專家確認。
是,卡桑德拉具有線性擴展很好的教程。
可擴展性是線性的,如下圖所示。每個客戶端系統每秒生成約17500個寫入請求,並且在擴大流量時沒有瓶頸。每個客戶端運行200個線程來在集羣中生成流量。
Datastax指出:
什麼是Apache的卡桑德拉的好處網絡連接TS?
大規模擴展的環形架構:基於最佳迪納摩亞馬遜和谷歌的BigTable,Cassandra的對等網絡架構克服了主從設計的限制,並允許高可用性和大規模可擴展性的。
線性度性能:添加到卡桑德拉集羣(在線全部完成)節點增加數據庫的吞吐量在一個可預見的,線性的方式進行讀取和寫入操作。
所以答案是YES ,這是可能的。添加新節點並重新分配令牌可能需要一些時間。但它會隨着您更改節點數量而擴展。
如果您需要更多的信息來了解它是如何將規模,檢查下面這個鏈接:
是的,它是如此,但與單一的評論。您應該考慮複製因子(RF)和一致性級別(CL),因爲它們也會影響縮放行爲。例如,如果您最初擁有RF = 3的10個節點,並且在RF = 3的情況下將節點數增加到20,則寫入吞吐量將呈線性增長。
但是,如果您想增加讀取吞吐量,則需要增加RF。隨着RF的增加,您必須降低寫入一致性級別以提高寫入吞吐量。總之,使用相同的RF和CL參數不能以線性方式增加讀寫吞吐量。
是 - 但只有當你的數據是否正確建模 - 尤其是需要你的數據被你的分區鍵之間平均分配(因爲它們映射到特定的副本節點)以避免熱點。鑑於此,卡桑德拉會水平放大。
cassandra中的「表」分佈在羣集中的所有節點中。每個節點負責一系列令牌,這些令牌是主鍵的分區鍵部分的散列。
現在,如果您將節點數加倍(例如 - 現有令牌範圍分爲兩半,並在引導新節點時分配)。所以每個節點只能處理一半的初始請求。如果您之後將每個節點的請求翻倍爲與之前大致相同的負載。
對於讀取密集型請求 - 選擇較高的複製因子有助於您在一段時間內處理陳舊的數據(例如,讀取和寫入的低一致性級別)。
有來自DataStax可以在這裏https://academy.datastax.com/