为什么选择Cassandra
cassandra概況
為什么選擇Cassandra?cassandra到底有那些令人印象深刻的特點呢?不防我們先來看下cassandra目前的大體概況。
理論扎實,師出名門
cassandra不僅吸收了dynamo論文中的如何做分布式,如何做副本復制,故障容錯等方面成功的經驗,又吸取了google bigtable中的LSM單機引擎層面精華。理論扎實,工程實現靠譜,所以面世以來,不斷受到人們的追捧。
DB-EnginesRanking排名一騎絕塵
寬表領域第一,全部數據排名第十,可以看出廣受用戶認可,流行度頗高。
Nosql主流產品性能對比
從benchmark可以看到cassandra性能是搖搖領先的,受用戶認可也是有原因的,畢竟能打,有實力。
為什么選擇cassandra
了解了cassandra概況,表現搶眼,再讓我們深入看看,什么原因讓我們選擇cassandra
我大致總結了如下十點:
1.線性擴展,輕松應對速度,多樣性和復雜性問題
與下一代云應用相關的許多挑戰都集中在數據量和數據處理速度上。Cassandra能否有能力應對這種具有多樣性的數據流量?答案是肯定的,Cassandra是線性擴展,可以根據前臺數據流量輕松確定集群規模,處理能力不夠?加一臺節點試試。
2.可以處理大量數據集
Netflix,Hulu,Instagram,eBay,Apple和Spotify都在大規模使用Cassandra,作為他們產品后端的一部分。facebook的instangram一天用cassandra處理上億圖片,這足夠說明了cassandra可以自如的處理大量數據集。
3. 一致化軟硬件環境,易于大規模部署
不像有些分布式系統,cassandra不依賴外部組件,所有必須的操作都集成在cassandra內部了,因為是p2p對等架構,無主,環上的節點都是對等的,所以實際部署時,只需要一種機型,一個進程,極度簡化部署及后續運維工作,適合大規模部署。
4. 高度容錯
Cassandra采用了許多容錯機制。由于C* 是無主的,所以沒有單點故障。可以做到不停服滾動升級。這是因為Cassandra可以支持多個節點的臨時失效(取決于群集大小),對群集的整體性能影響可以忽略不計。
Cassandra提供多地域容災。Cassandra允許您將數據復制到其他數據中心,并在多個地域保留多副本。除了作為強大的災難恢復和業務連續性保障之外,這有助于滿足許多監管,離線分析等要求。
圖示:多DC可用于多地容災,或者離線分析用。
5. 被證明過,已經在企業應用程序和許多用例中取得成功
已經有許多Cassandra被有效使用的例子。銀行和其他金融機構正在使用C*存儲大量金融數據。分析公司正在使用Cassandra來存儲網絡分析數據。醫療公司正在使用Cassandra來存儲傳感器數據和其他時序數據。還有許多公司利用Cassandra存儲物聯網數據。所以說cassandra是被證明過的。
6.易于管理
Cassandra簡化了系統管理。由于Cassandra是一個無主系統,環中的所有節點都是相同的; 一個同質的系統。它具有容錯能力,可以支持節點臨時失效,同時對性能的影響最小。這意味著節點易于更換,并且也不要求即刻替換宕機節點。
7.自主優化
有大量的,不同的參數讓你根據自身場景不斷的調優,舉個例子,如果你是一個重寫,讀很少的場景,可以修改配置參數成重寫系統。參數設置不僅僅是集群級別的,也可以是dc級別的,甚至客戶端單個請求級別的,比如單次請求設置一致性級別,已達到更低的延時。
圖示:調節一致性級別,達到更低延時目標
8.易于集成其他開源組件
Cassandra可以很容易的跟其他開源組件做集成。據我所知,cassandra已經成功跟kafka,spark,solr做集成,打通了大數據生態上下游,成為大數據處理里面重要的一環
9.出色的監控選項
cassandra提供了很多的監控指標,這些監控項這可以通過Cassandra利用Java MBeans并將它們暴露給不同外部監控系統,比如Datastax的監控系統Opscenter,阿里云的天象監控系統。您可以使用這些指標監控cassandra運行狀況,再出現異常指標做出相應的決策。
10. 開源可控&活躍的社區
目前apache cassandra有5.4K Star,并且是開源可控,不需要昂貴的licence費用。stackoverflow上有數萬個打了cassandra tag的問題,這些足以說明cassandra足夠活躍。
一個開源軟件要獲得真正意義上的成功,就需要有一個圍繞它發展的生態系統。對于像Cassandra這樣的數據庫,就必須有圍繞它的咨詢,監控和故障排查系統,插件,儀表系統和備份系統, 使得您的組織不需要重復開發上述一切能力,可以基于社區已有的內容。甚至很多云廠商提供Cassandra托管服務,讓您只關注應用程序的開發。
總結
cassandra功能強大,更像一個真正的數據庫,以下圖總結來結束本文
Cassandra是您理想的數據庫原因有很多。了解您的系統要求,工作負載和未來業務增長情況將有助于您做出正確的選擇。如你所見,選擇Cassandra是一個十分明智的選擇。
原文鏈接
本文為云棲社區原創內容,未經允許不得轉載。
總結
以上是生活随笔為你收集整理的为什么选择Cassandra的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 把握数据库发展趋势 DBA应如何避免“踩
- 下一篇: 日均处理万亿数据!Flink在快手的应用