Leveldb是一個(gè)google實(shí)現(xiàn)的非常高效的kv數(shù)據(jù)庫(kù)菇篡,目前的版本1.2能夠支持billion級(jí)別的數(shù)據(jù)量了。 在這個(gè)數(shù)量級(jí)別下還有著非常高的性能,主要?dú)w功于它的良好的設(shè)計(jì)。特別是LMS算法,但是Leveldb是單進(jìn)程的服務(wù)证逻,而且它只是一個(gè) C/C++ 編程語(yǔ)言的庫(kù), 不包含網(wǎng)絡(luò)服務(wù)封裝, 所以無(wú)法像一般意義的存儲(chǔ)服務(wù)器(如 MySQL)那樣, 用客戶端來(lái)連接它. LevelDB 自己也聲明, 使用者應(yīng)該封裝自己的網(wǎng)絡(luò)服務(wù)器.所以它只能做一個(gè)嵌入式數(shù)據(jù)來(lái)使用,目前淘寶的Tair系統(tǒng)將它做了封裝抗斤。
Rocksdb其實(shí)是Leveldb的改進(jìn)版囚企,RocksDB支持一次獲取多個(gè)K-V,還支持Key范圍查找瑞眼。LevelDB只能獲取單個(gè)Key,RocksDB除了簡(jiǎn)單的Put龙宏、Delete操作,還提供了一個(gè)Merge操作伤疙,說(shuō)是為了對(duì)多個(gè)Put操作進(jìn)行合并银酗。站在引擎實(shí)現(xiàn)者的角度來(lái)看辆影,相比其帶來(lái)的價(jià)值,其實(shí)現(xiàn)的成本要昂貴很多黍特。
下面是性能對(duì)比
Accumulo是一個(gè)使用谷歌BigTable的設(shè)計(jì)思路蛙讥,基于Hadoop、Zookeeper和Thrift構(gòu)建的灭衷,可靠的次慢、可伸縮的、高性能的排序分布式KV數(shù)據(jù)存儲(chǔ)系統(tǒng)翔曲。這個(gè)開(kāi)源項(xiàng)目是由美國(guó)國(guó)家安全局開(kāi)發(fā)经备,并于2011年發(fā)布的。目前部默,Accumulo屬于Apache的頂級(jí)項(xiàng)目,它具有BigTable中所沒(méi)有的一些功能造虎,例如基于單元的訪問(wèn)控制傅蹂。
下面我們看看Accumulo都有哪些主要特性:
1、對(duì)數(shù)據(jù)保護(hù)的安全性高
從下圖可以清楚的看到Accumulo是如何控制單元的訪問(wèn)控制的算凿。
2份蝴、支持ACID原則
3、讀寫(xiě)性能強(qiáng)
麻省理工2013的性能測(cè)試報(bào)告
MIT Lincoln laboratories has recently released performance data for Apache Accumulo.In this paper MIT reached ~400,000 writes per second per node across an 8 node cluster.This is impressive performance given that MIT cites HBase as supporting ~60,000 writes per second per node and Cassandra as supporting ~35,000 writes per second per node.
在8節(jié)點(diǎn)集群的每個(gè)節(jié)點(diǎn)上氓轰,accumulo每秒達(dá)到40萬(wàn)次的寫(xiě)入婚夫,hbase達(dá)到6萬(wàn)次的寫(xiě)入,Cassandra達(dá)到3.5萬(wàn)次的寫(xiě)入署鸡。
為什么會(huì)寫(xiě)入這么快呢案糙?原因如下:
因?yàn)閍ccumulo使用了動(dòng)態(tài)分布式空間數(shù)據(jù)模型(The Dynamic Distributed Dimensional?Data Model (D4M)),Accumulo沒(méi)有直接使用Hadoop的MapReduce并行編程模型靴庆,而是使用了pMatlab的并行編程環(huán)境时捌。
4、分布式
Accumulo采用分布式存儲(chǔ)炉抒。當(dāng)Accumulo表不斷的變大時(shí)奢讨,表會(huì)被自動(dòng)分成塊,數(shù)據(jù)可以存儲(chǔ)在不同的塊中焰薄。
5拿诸、分區(qū)
當(dāng)表的容量達(dá)到上限時(shí),accumulo會(huì)自動(dòng)將表進(jìn)行分割成默認(rèn)的大小塞茅。
Accumulo的使用場(chǎng)景
目前亩码,Accumulo都用在了政府的應(yīng)用中,除政府之外的企業(yè)用的比較少凡桥。Cloudera公司已經(jīng)將Accumulo 1.6.0的版本加入到了CDH 5.4.1中蟀伸。此外,Hadoop系統(tǒng)打算用Accumulo解決儲(chǔ)存海量數(shù)據(jù)的可擴(kuò)展性。
最后通過(guò)各維度的比較啊掏,三個(gè)數(shù)據(jù)庫(kù)的對(duì)比為
參考的相關(guān)鏈接
云端大數(shù)據(jù)安全:悟透關(guān)鍵挑戰(zhàn)
云端大數(shù)據(jù)安全利器:亞馬遜DynamoDB和Accumulo訪問(wèn)控制