国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費電子書等14項超值服

開通VIP
Cassandra Vs HBase ? a db thinker's home

Cassandra Vs HBase

Cassandra vs HBase
By Vaibhav Puranik Translated By Jametong

我們是一家廣告網(wǎng)絡(luò)公司.我們需要存儲展示與點擊信息.我們在為我們的新項目評估多個不同的大批量數(shù)據(jù)(或nosql,或任何你喜歡的稱呼)系統(tǒng).過去8個月中,我們一直在一個測試產(chǎn)品上使用HBase,并且滿意它的表現(xiàn),但是,最近Cassandra的風頭很高,因此,我們決定對它做個測試.我認為,從某些角度講,Cassandra團隊的推廣做的很不錯.你將發(fā)現(xiàn),在SantaMonica,哪怕是非技術(shù)人員(諸如風險投資商、CEO以及產(chǎn)品經(jīng)理)也會相互推薦使用Cassandra.

Cassandra給人的第一印象很好.它們的首頁看上去比HBase更加專業(yè)也更加友好.安裝并運行它也很簡單.這個網(wǎng)站的文檔很豐富.說實在話,安裝并讓其工作只花費了我5分鐘的時間.

真正的挑戰(zhàn)是理解Cassandra的數(shù)據(jù)模型,并嘗試在我們的使用場景中實現(xiàn)它.我們很清楚如何在HBase中實現(xiàn)它,因為我們對HBase有相當不錯的使用經(jīng)驗.雖然Cassandra也是從BigTable出繼承了同樣的數(shù)據(jù)模型,Cassandra與HBase之間還是有一些根本性的不同的.我試圖用表格整理了兩個系統(tǒng)之間的差異,如下:

Cassandra HBase
缺少類似于表的概念.所有的文檔都告訴你,有多個Keyspace的情況不常見.這意味著你必須在一個集群中共享同一個key space.另外,新增keyspace需要重啟集群才能生效. 存在表相關(guān)的概念.每個表都有它自己的key space. 這一點對我們來說很重要.添加/刪除表都很容易,跟在RDBMS中一樣.
使用字符串的Key.通常使用uuid作為Key.如果希望你的數(shù)據(jù)按照時間排序,可以使用TimeUUID. 使用二進制Key.通常將三個不同的項目組合在一起來構(gòu)建一個Key.這意味著你可以搜索一個給定表中的多個鍵.
即使使用TimeUUID,也不會發(fā)生熱點問題,因為Cassandra會對客戶端請求做負載均衡. 如果Key的第一部分是時間或者序列數(shù),就會發(fā)生熱點問題.所有新的Key都會被插入同一個區(qū)域,一直到此區(qū)域被塞滿(因而導(dǎo)致出現(xiàn)熱點問題).
支持列排序 不支持列排序
超列(Super Column)概念使得你可以設(shè)計非常靈活也非常復(fù)雜的表結(jié)構(gòu). 不支持超列.不過可以設(shè)計一個類似與超列的結(jié)構(gòu),不過列名稱與值都是二進制的.
沒有便捷的方法來自增長一個列的值.實際上,最終一致性的不同特性使得更新/寫入一條記錄并在更新后立即讀出非常困難.必須確保使用R+W>N來實現(xiàn)強一致性. 由于設(shè)計上就是一致性.提供了一個非常便捷的方法來自增計數(shù)器.非常適合做數(shù)據(jù)匯總.
剛開始支持Map Reduce接口.還需要有一個hadoop集群來運行它.需要將數(shù)據(jù)從Cassandra集群遷移到Hadoop集群.不適合對大型數(shù)據(jù)運行map reduce任務(wù). 對Map Reduce的支持是原生的.HBase構(gòu)建在Hadoop集群上.數(shù)據(jù)不需要做遷移.
如果不需要Hadoop的話,維護相對簡單. 由于包含多個諸如Zookeeperr、Hadoop以及HBase本身的可活動組件,維護相對復(fù)雜.
到目前為止,還沒有本地化的Java Api支持.沒有Java文檔.雖然是使用Java編寫的,你還是必須用Thrift接口來與集群進行通訊. 有友好的本地Java API.比Cassandra更像是Java系統(tǒng).由于我們的應(yīng)用是基于Java的,這一點對我們很重要.
沒有主節(jié)點,因此也沒有單點故障. 雖然在概念上有一個主節(jié)點服務(wù),HBase本身對它的依賴并不嚴重.即使在主節(jié)點宕機的情況下,HBase集群仍然可以正常提供數(shù)據(jù)服務(wù).Hadoop的Namenode是一個單點故障.

在按照這種方式比較過數(shù)據(jù)模型與相關(guān)特性后,對我們來講,HBase是明顯的優(yōu)勝者.我的看法是,如果你確實需要一致性,HBase是一個明顯的選擇.更進一步,本地化的MapReduce支持、表概念以及可修改而且不用重啟集群的簡單的表結(jié)構(gòu)是你不可忽略的加分項.HBase是一個更加成熟的平臺.當人們說Twitter、Facebook在使用Cassandra時,他們忘記了這些公司同時也在使用HBase.實際上,Facebook最近雇用了一個HBase的代碼提交者(Commiter),這清楚地表明Facebook對HBase的興趣.

總之,我們?nèi)χС諬Base!!

Related posts:

  1. HBase vs Cassandra: 我們遷移系統(tǒng)的原因
  2. 選擇一個鍵值存儲系統(tǒng)(Cassandra Vs Voldemort)
  3. Cassandra – 一個分散的結(jié)構(gòu)化存儲系統(tǒng)
本站僅提供存儲服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊舉報。
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
一網(wǎng)打盡13款開源Java大數(shù)據(jù)工具,從理論到實踐的剖析
大數(shù)據(jù)相關(guān)的十大技術(shù)
HBase vs Cassandra: 我們遷移系統(tǒng)的原因 ? 我有分寸
【干貨】Hadoop大數(shù)據(jù)學習線路圖
Facebook:HBase每月存儲1350億條信息 - 數(shù)據(jù)庫 - JavaEye新聞
疫情期間“閉關(guān)修煉”,吃透這本Java核心知識,跳槽面試不心慌
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號成功
后續(xù)可登錄賬號暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點擊這里聯(lián)系客服!

聯(lián)系客服