hbase的
卡桑德拉
hbase is based on bigtable (google)
cassandra基於dynamodb(amazon)。它最初是由前亞馬遜工程師在facebook上開發的。這就是cassandra支援多資料中心的原因之一。
hbase使用hadoop基礎架構(zookeeper, namenode, hdfs)。部署hadoop的組織必須具有hadoop和hbase的知識
cassandra與hadoop分開啟動和發展, 其基礎架構和操作知識要求與hadoop不同。但是, 對於分析, 許多cassandra部署使用cassandra + storm(使用zookeeper)和/或cassandra + hadoop。
hbase-hadoop基礎結構具有幾個「活動部分」, 包括zookeeper, 名稱節點, hbase主伺服器和資料節點, zookeeper是集群的並且自然地具有容錯能力。需要對名稱節點進行群集以容錯。
cassandra使用單個節點型別。所有節點均相等, 並執行所有功能。任何節點都可以充當協調器, 從而確保沒有spof。當然, 新增風暴或hadoop會增加基礎架構的複雜性。
hbase非常適合進行基於範圍的掃瞄。
cassandra不支援基於範圍的行掃瞄, 這在某些用例中可能會受到限制。
hbase提供了跨廣域網的hbase集群的非同步複製。
cassandra隨機分割槽提供了跨wan的單行的行複製。
hbase僅支援有序分割槽。
cassandra正式支援有序分割槽, 但是cassandra的生產使用者都不使用有序分割槽, 這是因為它會產生「熱點」以及此類熱點導致的操作困難。
由於有序分割槽, hbase可以輕鬆地水平擴充套件, 同時仍支援rowkey範圍掃瞄。
如果將資料儲存在cassandra中的列中以支援範圍掃瞄, 則cassandra中行大小的實際限制是10兆位元組。
hbase支援原子比較和設定。 hbase支援連續的事務。
cassandra不支援原子比較和設定。
hbase不支援針對單個行的讀取負載平衡。單行一次僅由乙個區域伺服器提供服務。
cassandra將支援對單個行的讀取負載平衡。
布隆過濾器可以在hbase中用作索引的另一種形式。
cassandra使用布隆過濾器進行鍵查詢。
hbase中的協處理器功能支援觸發器。
cassandra不支援類似協處理器的功能。
Cassandra和HBase主要設計思路對比
cassandra hbase 一致性quorumnrw策略 通過gossip協議同步merkletree,維護集群節點間的資料一致性 單節點,無複製,強一致性 可用性1,基於consistenthash相鄰節點複製資料,資料存在於多個節點,無單點故障。2,某節點宕機,hash到該節點的新資料自動路...
cassandra的索引查詢和排序
cassandra的索引查詢和排序 cassandra的查詢雖然很弱,但是它也是支援索引和排序的,當然是簡陋的查詢,這一切都是為了追求效能的代價,所以要使用cassandra,你不能希望它完全適用你的邏輯,而是把你的邏輯設計的更適合cassandra。第一 索引查詢 cassandra是支援建立二級...
cassandra的索引查詢和排序
cassandra的索引查詢和排序 cassandra的查詢雖然很弱,但是它也是支援索引和排序的,當然是簡陋的查詢,這一切都是為了追求效能的代價,所以要使用cassandra,你不能希望它完全適用你的邏輯,而是把你的邏輯設計的更適合cassandra。第一 索引查詢 cassandra是支援建立二級...