国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区

掃一掃
關注微信公眾號

NoSQL生態系統大檢閱 不同特性大比拼
2010-07-29   網絡

Jonathan Ellis曾寫過一篇博文《NoSQL Ecosystem》,對多種NoSQL數據庫產品從可擴展性、數據模型與查詢模型等方面進行了比較, Jametong對本博文進行了翻譯,現轉載于此,以方便大家學習。

空前的數據量正在驅動商業尋找傳統關系型數據庫的替代方案,它已經為我們服務30多年了(今年5月份ACM剛剛給關系型數據慶祝40歲生日)。總體來講,這些替代方案就是目前知名的“NoSQL數據庫”。

關系型數據庫的基本問題是無法處理許多現代的工作負載。有三個具體的問題領域:向外擴展 (Scale out)類似于Digg(3TB的綠色徽章數據)或Facebook(50T 的收件箱搜索數據)或Ebay(總共2PB的數據)的數據集,單機性能限制以及僵化的概要設計。

商業上(包含Rackspace Cloud公司)需要尋找新的方式來存儲并擴展大規模的數據。我最近寫了一篇關于Cassandra的文章,一個我們投入了資源的非關系型數據庫。還有另外一些正在運作中的非關系型數據庫,它們匯總在一起被我們稱為“NoSQL運動”。

“NoSQL”這個術語實際上是由一個Rackspace 的員工Eric Evans最先提出的,當時來自Last。fm網站的Johan Oskarsson提議組織一次開源分布式數據庫的研討會。 這個名稱與概念就一起流行了起來。

有些人反對NoSQL這個說法,因為它聽起來像是僅僅表明了我們不做什么,而不是我們在做什 么。 事實確實是這樣,我也基本同意此說法,但是這個術語仍然有其價值,因為當關系型數據庫是你所知道的唯一工具時,每個問題看起來都像個拇指(俗語, 如果你手里有一個錘子,你看到什么都是釘子,譯者補充)。NoSQL這個術語起碼讓人們知道還有其他的選項可供選擇。但是,當關系型數據庫是解決問題的最 佳工具時,我們并不是反關系型數據庫者;它的涵義應該是“不僅僅有SQL(Not Only SQL)”而不是“不再有SQL(No SQL at all)”。

有關NoSQL名稱的一個真實的憂慮是,它是如此大的一個概念,以致于差異巨大的設計都可以 涵蓋其中。如果在討論各種產品時沒有搞清楚這一點,就會導致概念混亂。因此,我建議大家沿著下面三個維度來思考這些數據庫選項: 可伸縮性(scalability)、數據模型與查詢模型(data and query model)以及持久化設計(persistence design)。

我選擇了10種NoSQL數據庫作為示例。這不是一份詳盡的清單,但是這里討論的概念對于評估其他的NoSQL數據庫也至關重要。

可伸縮性(Scalability)

通過使用復制, 就可以輕易擴展讀的規模,因此,每當我在此文中談到規模伸縮(scaling),都是表示通過自動分區將數據分布到多臺機器以擴展寫的規模。我們將做這種 事情的系統稱為“分布式數據庫”。它們包括Cassandra、HBase、Riak、Scalaris、Voldemort以及其他很多類似的系統。如 果你的寫容量或寫數據大小已經無法在一臺機器上進行處理,如果你不想自己手工來管理分區的話,這些就是你的唯一選項了。(你不會這么做吧?)

人們使用分布式數據庫主要關注兩件事情:1) 是否支持多個數據中心以及; 2) 能否在對應用透明的前提下往正在運行的集群中添加新機器的能力。

非分布式NoSQL數據庫包括CouchDB、MongoDB、Neo4j、Redis以及 Tokyo Cabinet。它們可作為分布式系統的持久層;:MongoDB提供了受限制的數據分片(Sharding)功能,CouchDB也有一個獨立的 Lounge項目來支持做類似的分片功能,Tokyo Cabinet可用作Voldemort的存儲引擎。

數據模型與查詢模型

NoSQL數據庫之間的數據模型與查詢API千差萬別。

部分重點內容介紹:

Cassandra與HBase共同使用的ColumnFamily模型都是受到 Google的Bigtable 論文第2節的啟發。 (Cassandra丟棄了歷史版本,并增加了超級列 (SuperColumn)的概念)。在這兩個系統中,都有與你之前看到的關系型數據庫類似的行/列概念,但是此處的行是稀疏的行:你想要一行有多少列, 一行就可以有多少列,這些列并不需要事先定義好。

鍵值(Key/value)模型是最簡單也最容易實現的模型,但是,如果你僅想對值(Value)的一部分進行查詢/更新時,它的效率會比較低。要想在一個分布式的鍵值上,實現更加復雜的結構也會非常困難。

文檔數據庫實際上是更高級的鍵/值(Key/Value)數據庫,允許在每個鍵上關聯嵌套的值。相對于每次簡單地返回整個BLOB(二進制大對象) 來講,文檔數據庫支持更高效的查詢。

Neo4j擁有一個非常獨特的數據模型,它以節點與邊的形式在圖中存儲對象與關系。對于適合這個模型(例如,分層數據)的查詢,它的性能可能會達到其替代選項的1000 倍。

Scalaris的獨特之處在于,它可以提供跨越多個鍵的分布式事務。(關于一致性與可用性的權衡的討論超出了本文的范圍,但是,在評估分布式系統時,它也是需要記住的一方面。)

持久化設計

關于持久化設計,我的意思是“數據在內部是如何存儲的?”

持久化模型可以為我們提供大量關于這些數據庫適合處理多大工作負載的信息。

內存數據庫非常非常快(單臺機器上的Redis可以處理100,000次操作/秒), 但是無法處理超過可用內存的數據集。持久性(Durability,數據不會由于服務器崩潰或停電而丟失)也是個問題; 在兩次刷新到磁盤的時間間隔內預期數據丟失量可能非常大。Scalaris是我們此列表中唯一的內存數據庫,它通過復制來解決持久性的問題,但是,由于它 不支持跨越多個數據中心,因此,如果遇到類似電源故障一類的問題數據仍將非常脆弱。

在為了持久性寫入一個僅可追加的提交日志之后,Memtable與SSTable會緩沖內存 中的寫操作。在接受了足夠多的寫操作之后 (Memtable達到一定的閾值),就會對memtable中的數據進行排序,并一次性寫入到磁盤,寫入的文件就是一個“sstable。” 這樣它就可以提供接近于內存處理的性能,因為它不涉及任何檢索操作,同時又可以避免純粹在內存中的方法那樣遭遇持久性問題。(在前面引用的 Bigtable論文的第5。3與5。4兩節,以及論文日志結構的合并樹 (The Log-Structured merge-tree)中對此都有詳細的描述)

幾乎從有數據庫開始,B-樹就開始在數據庫中使用了。它們提供健壯的索引支持,但是在旋轉磁盤(仍然是目前最經濟實用的存儲介質)上, 它的性能表現比較差,因為它讀寫任何內容都會涉及到多次磁盤檢索。

CouchDB的僅可做追加操作的 B-樹(Append-Only B-tree)是一個比較有趣的變體,它以限制CouchDB并發寫(one write at a time)的代價避免了其檢索的開銷。

結論

NoSQL運動在2009年取得了爆發性的效果,因為越來越多的企業需要處理大規模的數據。Rackspace Cloud公司很高興在NoSQL運動扮演了一個較早期的角色,還會持續為Cassandra投入資源并支持與NoSQL East類似的活動。

熱詞搜索:

上一篇:一種新的思維方式?NoSQL數據建模
下一篇:郵件歸檔的“大方向”和“小細節”

分享到: 收藏
国产一级一区二区_segui88久久综合9999_97久久夜色精品国产_欧美色网一区二区
亚洲午夜在线| 欧美精品1区2区| 欧美在线视频一区二区| 欧美日韩福利视频| 一区二区三区在线观看国产| 欧美一区免费| 亚洲成色777777在线观看影院| 欧美成年人在线观看| 日韩视频亚洲视频| 国产精品美女久久久浪潮软件| 午夜精品久久久久久久蜜桃app | 日韩午夜免费视频| 欧美亚洲第一页| 欧美综合国产精品久久丁香| 亚洲国产精品综合| 欧美天天综合网| 久久久五月婷婷| 一本色道久久综合亚洲精品婷婷 | 亚洲全部视频| 国产精品夜夜夜| 欧美成年人视频网站| 午夜亚洲精品| 99精品视频免费在线观看| 国产亚洲视频在线| 欧美片在线观看| 久久久亚洲成人| 亚洲线精品一区二区三区八戒| 精品成人一区二区| 国产精品一级在线| 欧美日韩在线一二三| 久久视频在线视频| 欧美一级午夜免费电影| 中文在线一区| 亚洲日本免费电影| 韩日欧美一区二区三区| 国产精品一级久久久| 欧美日韩一区二区国产| 免费观看成人鲁鲁鲁鲁鲁视频 | 欧美亚洲一区二区在线| 亚洲人成网站在线观看播放| 国产手机视频一区二区| 国产精品看片资源| 欧美人与禽猛交乱配| 久久久久久夜| 欧美一区视频在线| 欧美一区二区三区四区在线| 亚洲午夜在线视频| 一区二区久久久久久| 99热在线精品观看| 日韩一二三在线视频播| 亚洲欧洲日韩综合二区| 亚洲国产一区二区视频| 亚洲国产经典视频| 亚洲成色最大综合在线| 悠悠资源网久久精品| 狠狠色丁香久久婷婷综合_中| 国产欧美日本一区视频| 国产欧美日韩精品一区| 国产欧美三级| 国产综合色产在线精品| 一色屋精品视频在线观看网站| 一区二区三区在线观看欧美| 精品成人国产在线观看男人呻吟| 国产一区久久久| 亚洲国产精品激情在线观看| 亚洲精选视频免费看| 日韩视频在线一区二区三区| 一区二区三区四区国产| 亚洲一区欧美一区| 性色av香蕉一区二区| 久久高清国产| 欧美ab在线视频| 欧美日本在线一区| 国产精品视区| 伊人春色精品| 99在线精品免费视频九九视| 亚洲午夜激情网页| 久久精品亚洲国产奇米99| 欧美福利视频| 国产精品久久久久aaaa九色| 国产偷国产偷精品高清尤物| 亚洲国产精品黑人久久久| 亚洲视频在线观看| 久久久水蜜桃av免费网站| 欧美理论在线播放| 欧美午夜精品久久久久久浪潮| 国产精品爽黄69| 影音先锋日韩有码| 亚洲午夜伦理| 老司机免费视频一区二区| 欧美日韩国产区一| 国产日韩精品入口| 亚洲毛片在线看| 久久aⅴ国产紧身牛仔裤| 欧美激情第六页| 国产精品网站视频| 最近中文字幕日韩精品| 欧美一区二区观看视频| 另类专区欧美制服同性| 国产精品国产三级国产普通话蜜臀 | 一区在线观看| 亚洲视频日本| 欧美1区3d| 国产精品视频最多的网站| 亚洲人成亚洲人成在线观看图片| 亚洲影院污污.| 欧美第一黄色网| 国产一区二区三区成人欧美日韩在线观看 | 牛牛精品成人免费视频| 国产日本欧美一区二区三区在线| 亚洲毛片播放| 美女999久久久精品视频| 国产欧美一区在线| 亚洲一区久久久| 欧美亚洲成人精品| 夜夜嗨av一区二区三区网页| 欧美肥婆bbw| 亚洲国产高清高潮精品美女| 久久成人精品| 国产嫩草影院久久久久| 亚洲综合国产激情另类一区| 欧美日韩亚洲免费| 99在线精品观看| 欧美黑人在线播放| 亚洲电影中文字幕| 久久久久免费| 黑人极品videos精品欧美裸| 先锋影音网一区二区| 国产精品高潮呻吟久久| 9久re热视频在线精品| 欧美精品一区二区在线观看| 亚洲高清在线观看| 蜜桃精品一区二区三区 | 亚洲日本视频| 欧美成人中文| 亚洲日本免费| 欧美韩日精品| 亚洲日本成人网| 欧美精品七区| 中文欧美在线视频| 欧美激情综合在线| 亚洲免费高清视频| 欧美日韩小视频| 亚洲永久视频| 国产日韩一区在线| 性欧美18~19sex高清播放| 国产免费成人在线视频| 欧美在线关看| 精品成人在线| 欧美另类视频在线| 亚洲性夜色噜噜噜7777| 国产精品亚洲片夜色在线| 欧美一区二视频| 狠狠色狠狠色综合人人| 久久一区二区三区四区五区| 亚洲黄色免费网站| 欧美精品日日鲁夜夜添| 亚洲深夜影院| 国产午夜一区二区三区| 麻豆精品传媒视频| 亚洲亚洲精品在线观看 | 亚洲午夜精品网| 国产日产亚洲精品| 久久久.com| 亚洲精品久久久蜜桃| 国产精品s色| 久久青青草原一区二区| 妖精视频成人观看www| 国产一区二区0| 欧美精品激情| 午夜精品久久久久久久| 在线日韩欧美视频| 国产精品看片你懂得| 免费在线欧美黄色| 午夜精品久久久| 亚洲美女淫视频| 国语自产偷拍精品视频偷| 欧美日韩理论| 久久亚洲一区| 亚洲曰本av电影| 最新高清无码专区| 国产亚洲激情| 国产精品www色诱视频| 久久综合中文字幕| 亚洲欧美日韩一区二区三区在线观看 | 欧美视频不卡| 老司机精品视频一区二区三区| 99精品视频免费观看视频| 国产日韩欧美综合| 欧美日韩国产色视频| 久久久久一区| 亚洲欧美怡红院| 99精品视频网| 亚洲高清av| 狠狠色丁香婷综合久久| 国产精品久久久久久久久久妞妞| 欧美成年网站| 麻豆精品视频| 久久最新视频| 久久久久久电影|