關(guān)系數(shù)據(jù)庫經(jīng)過幾十年的發(fā)展,已經(jīng)非常成熟,但同時也存在不足:
創(chuàng)新互聯(lián)是一家專業(yè)提供大祥企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)、H5開發(fā)、小程序制作等業(yè)務(wù)。10年已為大祥眾多企業(yè)、政府機構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)站制作公司優(yōu)惠進行中。
表結(jié)構(gòu)是強約束的,業(yè)務(wù)變更時擴充很麻煩。
如果對大數(shù)據(jù)量的表進行統(tǒng)計運算,I/O會很高,因為即使只針對某列進行運算,也需要將整行數(shù)據(jù)讀入內(nèi)存。
全文搜索只能使用 Like 進行整表掃描,性能非常低。
針對這些不足,產(chǎn)生了不同的 NoSQL 解決方案,在某些場景下比關(guān)系數(shù)據(jù)庫更有優(yōu)勢,但同時也犧牲了某些特性,所以不能片面的迷信某種方案,應(yīng)將其作為 SQL 的有利補充。
NoSQL != No SQL,而是:
NoSQL = Not Only SQL
典型的 NoSQL 方案分為4類:
Redis 是典型,其 value 是具體的數(shù)據(jù)結(jié)構(gòu),包括 string, hash, list, set, sorted set, bitmap, hyperloglog,常被稱為數(shù)據(jù)結(jié)構(gòu)服務(wù)器。
以 list 為例:
LPOP key 是移除并返回隊列左邊的第一個元素。
如果用關(guān)系數(shù)據(jù)庫就比較麻煩了,需要操作:
Redis 的缺點主要體現(xiàn)在不支持完成的ACID事務(wù),只能保證隔離性和一致性,無法保證原子性和持久性。
最大的特點是 no-schema,無需在使用前定義字段,讀取一個不存在的字段也不會導(dǎo)致語法錯誤。
特點:
以電商為例,不同商品的屬性差異很大,如冰箱和電腦,這種差異性在關(guān)系數(shù)據(jù)庫中會有很大的麻煩,而使用文檔數(shù)據(jù)庫則非常方便。
文檔數(shù)據(jù)庫的主要缺點:
關(guān)系數(shù)據(jù)庫是按行來存儲的,列式數(shù)據(jù)庫是按照列來存儲數(shù)據(jù)。
按行存儲的優(yōu)勢:
在某些場景下,這些優(yōu)勢就成為劣勢了,例如,計算超重人員的數(shù)據(jù),只需要讀取體重這一列進行統(tǒng)計即可,但行式存儲會將整行數(shù)據(jù)讀取到內(nèi)存中,很浪費。
而列式存儲中,只需要讀取體重這列的數(shù)據(jù)即可,I/O 將大大減少。
除了節(jié)省I/O,列式存儲還有更高的壓縮比,可以節(jié)省存儲空間。普通行式數(shù)據(jù)庫的壓縮比在 3:1 到 5:1 左右,列式數(shù)據(jù)庫在 8:1 到 30:1,因為單個列的數(shù)據(jù)相似度更高。
列式存儲的隨機寫效率遠(yuǎn)低于行式存儲,因為行式存儲時同一行多個列都存儲在連續(xù)空間中,而列式存儲將不同列存儲在不連續(xù)的空間。
一般將列式存儲應(yīng)用在離線大數(shù)據(jù)分析統(tǒng)計場景,因為這時主要針對部分列進行操作,而且數(shù)據(jù)寫入后無須更新。
關(guān)系數(shù)據(jù)庫通過索引進行快速查詢,但在全文搜索的情景下,索引就不夠了,因為:
假設(shè)有一個交友網(wǎng)站,信息表如下:
需要匹配性別、地點、語言列。
需要匹配性別、地點、愛好列。
實際搜索中,各種排列組合非常多,關(guān)系數(shù)據(jù)庫很難支持。
全文搜索引擎是使用 倒排索引 技術(shù),建立單詞到文檔的索引,例如上面的表信息建立倒排索引:
所以特別適合根據(jù)關(guān)鍵詞來查詢文檔內(nèi)容。
上面介紹了幾種典型的NoSQL方案,及各自的適用場景和特點,您可以根據(jù)實際需求進行選擇。
本文主要內(nèi)容是測試了不同NoSQL數(shù)據(jù)庫在測試工具YCSB中的表現(xiàn)。我們選取了3款流行的內(nèi)存(in-memory)數(shù)據(jù)庫管理系統(tǒng):Redis,Tarantool 以及 CouchBase,還有緩存系統(tǒng)Memchached。Memchached雖然不屬于數(shù)據(jù)庫管理系統(tǒng)但常作為快速存儲系統(tǒng)使用。
測試環(huán)境由4臺在Microsoft Azure Cloud中的虛擬機組成的計算機組組成。這些虛擬機同屬于一個數(shù)據(jù)中心。nosql-1和nosql-2用作測試Tarantool和CouchBase,nosql-3和nosql-4用作測試Redis,Azure Redis Cache 以及 Memcached。這些機器都安裝和配置了相應(yīng)數(shù)據(jù)庫和測試項目。虛擬機的配置為4核A3 CPU,7GB RAM,120GB硬盤。
數(shù)據(jù)庫及設(shè)置
內(nèi)存數(shù)據(jù)庫管理系統(tǒng)會存儲所有在主內(nèi)存中的數(shù)據(jù)并在磁碟上進行持續(xù)更新操作;透過日志記錄每個數(shù)據(jù)的修改以確保連貫性。由于是以append-only方式進行日志寫入,因此它很少遇到瓶頸問題;讀取/寫入都不會造成頻繁的磁碟頭移動。
Redis在2009推出,目前的最新版本是3.0.5。我們這里使用的版本是3.0.4,以append-only(只附加)方式進行數(shù)據(jù)管理,與其配合使用的是Microsoft Azure Redis Cache工具。
Tarantool是一款開源NoSQL數(shù)據(jù)庫管理系統(tǒng)。我們使用的是Tarantool 1.6.7-126-gb35aff9,日志采用write-ahead(先寫)模式。Memcached是一款分布式內(nèi)存緩存系統(tǒng),這里使用是Memcached 1.4.14-0ubuntu9。
Couchbase Server是開源分布式NoSQL面向文檔數(shù)據(jù)庫,這里使用的版本是Couchbase 4.0.0-4047-1。
YCSB測試工具
Yahoo! Cloud Serving Benchmark(YCSB)是功能強大的NoSQL數(shù)據(jù)庫性能測試工具,它提供了6種主要的負(fù)載工作類型,以字母A到F來區(qū)分。
負(fù)載A負(fù)責(zé)更新操作,極值是50/50的讀寫操作,如用于進行新近操作記錄。負(fù)載B負(fù)責(zé)讀取操作,極值是95/5的讀寫操作,如用于進行圖片標(biāo)簽管理,多進行標(biāo)簽讀取操作。負(fù)載C負(fù)載100%的讀取操作,如用于進行用戶屬性獲取。負(fù)載D以先進先出方式進行插入操作,如用戶進行最新數(shù)據(jù)讀取。負(fù)載E負(fù)責(zé)小范圍記錄讀取而不是單個記錄讀取,如線程會話。負(fù)載F負(fù)責(zé)記錄的讀取,修改和寫入,如用戶信息管理。
我們對配置文件作了兩處參數(shù)修改:數(shù)據(jù)條目recordcount設(shè)為200000,操作條目operationcount設(shè)為5000000。YCSB是多線程工具,我們將以8, 16, 32, 64, 128 及256 線程來進行測試。詳細(xì)的測試腳本請點擊這里進行下載。
下列測試結(jié)果圖以顏色進行測試對象區(qū)分,
Tarantool (HASH) (藍(lán))
Tarantool (TREE)(淺藍(lán))
Redis (紅)
Azure Redis Cache (橙)
Memcached (綠)
CouchBase(黑)
更多圖片請點擊[這里]查看。
結(jié)論
Tarantool在所有負(fù)載類型測試中皆取得了最優(yōu)成績。它創(chuàng)建了一個無鎖內(nèi)存引擎,以協(xié)同多任務(wù)方式進行操作而不是互斥或并行處理方式。根據(jù)以下性能圖表現(xiàn),我們的結(jié)論是Tarantool的高吞吐量處理是其最大優(yōu)勢之一。因此在多數(shù)場合下,Tarantool是用戶的最佳選擇。
NoSQL太火,冒出太多產(chǎn)品了,保守估計也成百上千了。
互聯(lián)網(wǎng)公司常用的基本集中在以下幾種,每種只舉一個比較常見或者應(yīng)用比較成功的例子吧。
1. In-Memory KV Store : Redis
in memory key-value store,同時提供了更加豐富的數(shù)據(jù)結(jié)構(gòu)和運算的能力,成功用法是替代memcached,通過checkpoint和commit log提供了快速的宕機恢復(fù),同時支持replication提供讀可擴展和高可用。
2. Disk-Based KV Store: Leveldb
真正基于磁盤的key-value storage, 模型單一簡單,數(shù)據(jù)量不受限于內(nèi)存大小,數(shù)據(jù)落盤高可靠,Google的幾位大神出品的精品,LSM模型天然寫優(yōu)化,順序?qū)懕P的方式對于新硬件ssd再適合不過了,不足是僅提供了一個庫,需要自己封裝server端。
3. Document Store: Mongodb
分布式nosql,具備了區(qū)別mysql的最大亮點:可擴展性。mongodb 最新引人的莫過于提供了sql接口,是目前nosql里最像mysql的,只是沒有ACID的特性,發(fā)展很快,支持了索引等特性,上手容易,對于數(shù)據(jù)量遠(yuǎn)超內(nèi)存限制的場景來說,還需要慎重。
4. Column Table Store: HBase
這個富二代似乎不用贅述了,最大的優(yōu)勢是開源,對于普通的scan和基于行的get等基本查詢,性能完全不是問題,只是只提供裸的api,易用性上是短板,可擴展性方面是最強的,其次坐上了Hadoop的快車,社區(qū)發(fā)展很快,各種基于其上的開源產(chǎn)品不少,來解決諸如join、聚集運算等復(fù)雜查詢。
NoSQL(NoSQL
=
Not
Only
SQL
),意即“不僅僅是SQL”,是一項全新的數(shù)據(jù)庫革命性運動,早期就有人提出,發(fā)展至2009年趨勢越發(fā)高漲。NoSQL的擁護者們提倡運用非關(guān)系型的數(shù)據(jù)存儲,相對于鋪天蓋地的關(guān)系型數(shù)據(jù)庫運用,這一概念無疑是一種全新的思維的注入。
隨著大數(shù)據(jù)的不斷發(fā)展,非關(guān)系型的數(shù)據(jù)庫現(xiàn)在成了一個極其熱門的新領(lǐng)域,非關(guān)系數(shù)據(jù)庫產(chǎn)品的發(fā)展非常迅速?,F(xiàn)今的計算機體系結(jié)構(gòu)在數(shù)據(jù)存儲方面要有龐大的水平擴展性,而NoSQL也正是致力于改變這一現(xiàn)狀。目前Google的
BigTable和Amazon
的Dynamo使用的就是NoSQL型數(shù)據(jù)庫,本文介紹了10種出色的NoSQL數(shù)據(jù)庫。
雖然NoSQL流行語火起來才短短一年的時間,但是不可否認(rèn),現(xiàn)在已經(jīng)開始了第二代運動。盡管早期的堆棧代碼只能算是一種實驗,然而現(xiàn)在的系統(tǒng)已經(jīng)更加的成熟、穩(wěn)定。不過現(xiàn)在也面臨著一個嚴(yán)酷的事實:技術(shù)越來越成熟——以至于原來很好的NoSQL數(shù)據(jù)存儲不得不進行重寫,也有少數(shù)人認(rèn)為這就是所謂的2.0版本。這里列出一些比較知名的NoSQL工具,可以為大數(shù)據(jù)建立快速、可擴展的存儲庫。
給一個地址吧
特點:
它們可以處理超大量的數(shù)據(jù)。
它們運行在便宜的PC服務(wù)器集群上。
PC集群擴充起來非常方便并且成本很低,避免了“sharding”操作的復(fù)雜性和成本。
它們擊碎了性能瓶頸。
NoSQL的支持者稱,通過NoSQL架構(gòu)可以省去將Web或Java應(yīng)用和數(shù)據(jù)轉(zhuǎn)換成SQL友好格式的時間,執(zhí)行速度變得更快。
“SQL并非適用于所有的程序代碼,” 對于那些繁重的重復(fù)操作的數(shù)據(jù),SQL值得花錢。但是當(dāng)數(shù)據(jù)庫結(jié)構(gòu)非常簡單時,SQL可能沒有太大用處。
沒有過多的操作。
雖然NoSQL的支持者也承認(rèn)關(guān)系數(shù)據(jù)庫提供了無可比擬的功能集合,而且在數(shù)據(jù)完整性上也發(fā)揮絕對穩(wěn)定,他們同時也表示,企業(yè)的具體需求可能沒有那么多。
Bootstrap支持
因為NoSQL項目都是開源的,因此它們?nèi)狈?yīng)商提供的正式支持。這一點它們與大多數(shù)開源項目一樣,不得不從社區(qū)中尋求支持。
優(yōu)點:
易擴展
NoSQL數(shù)據(jù)庫種類繁多,但是一個共同的特點都是去掉關(guān)系數(shù)據(jù)庫的關(guān)系型特性。數(shù)據(jù)之間無關(guān)系,這樣就非常容易擴展。也無形之間,在架構(gòu)的層面上帶來了可擴展的能力。
大數(shù)據(jù)量,高性能
NoSQL數(shù)據(jù)庫都具有非常高的讀寫性能,尤其在大數(shù)據(jù)量下,同樣表現(xiàn)優(yōu)秀。這得益于它的無關(guān)系性,數(shù)據(jù)庫的結(jié)構(gòu)簡單。一般MySQL使用 Query Cache,每次表的更新Cache就失效,是一種大粒度的Cache,在針對web2.0的交互頻繁的應(yīng)用,Cache性能不高。而NoSQL的 Cache是記錄級的,是一種細(xì)粒度的Cache,所以NoSQL在這個層面上來說就要性能高很多了。
靈活的數(shù)據(jù)模型
NoSQL無需事先為要存儲的數(shù)據(jù)建立字段,隨時可以存儲自定義的數(shù)據(jù)格式。而在關(guān)系數(shù)據(jù)庫里,增刪字段是一件非常麻煩的事情。如果是非常大數(shù)據(jù)量的表,增加字段簡直就是一個噩夢。這點在大數(shù)據(jù)量的web2.0時代尤其明顯。
高可用
NoSQL在不太影響性能的情況,就可以方便的實現(xiàn)高可用的架構(gòu)。比如Cassandra,HBase模型,通過復(fù)制模型也能實現(xiàn)高可用。
主要應(yīng)用:
Apache HBase
這個大數(shù)據(jù)管理平臺建立在谷歌強大的BigTable管理引擎基礎(chǔ)上。作為具有開源、Java編碼、分布式多個優(yōu)勢的數(shù)據(jù)庫,Hbase最初被設(shè)計應(yīng)用于Hadoop平臺,而這一強大的數(shù)據(jù)管理工具,也被Facebook采用,用于管理消息平臺的龐大數(shù)據(jù)。
Apache Storm
用于處理高速、大型數(shù)據(jù)流的分布式實時計算系統(tǒng)。Storm為Apache Hadoop添加了可靠的實時數(shù)據(jù)處理功能,同時還增加了低延遲的儀表板、安全警報,改進了原有的操作方式,幫助企業(yè)更有效率地捕獲商業(yè)機會、發(fā)展新業(yè)務(wù)。
Apache Spark
該技術(shù)采用內(nèi)存計算,從多迭代批量處理出發(fā),允許將數(shù)據(jù)載入內(nèi)存做反復(fù)查詢,此外還融合數(shù)據(jù)倉庫、流處理和圖計算等多種計算范式,Spark用Scala語言實現(xiàn),構(gòu)建在HDFS上,能與Hadoop很好的結(jié)合,而且運行速度比MapReduce快100倍。
Apache Hadoop
該技術(shù)迅速成為了大數(shù)據(jù)管理標(biāo)準(zhǔn)之一。當(dāng)它被用來管理大型數(shù)據(jù)集時,對于復(fù)雜的分布式應(yīng)用,Hadoop體現(xiàn)出了非常好的性能,平臺的靈活性使它可以運行在商用硬件系統(tǒng),它還可以輕松地集成結(jié)構(gòu)化、半結(jié)構(gòu)化和甚至非結(jié)構(gòu)化數(shù)據(jù)集。
Apache Drill
你有多大的數(shù)據(jù)集?其實無論你有多大的數(shù)據(jù)集,Drill都能輕松應(yīng)對。通過支持HBase、Cassandra和MongoDB,Drill建立了交互式分析平臺,允許大規(guī)模數(shù)據(jù)吞吐,而且能很快得出結(jié)果。
Apache Sqoop
也許你的數(shù)據(jù)現(xiàn)在還被鎖定于舊系統(tǒng)中,Sqoop可以幫你解決這個問題。這一平臺采用并發(fā)連接,可以將數(shù)據(jù)從關(guān)系數(shù)據(jù)庫系統(tǒng)方便地轉(zhuǎn)移到Hadoop中,可以自定義數(shù)據(jù)類型以及元數(shù)據(jù)傳播的映射。事實上,你還可以將數(shù)據(jù)(如新的數(shù)據(jù))導(dǎo)入到HDFS、Hive和Hbase中。
Apache Giraph
這是功能強大的圖形處理平臺,具有很好可擴展性和可用性。該技術(shù)已經(jīng)被Facebook采用,Giraph可以運行在Hadoop環(huán)境中,可以將它直接部署到現(xiàn)有的Hadoop系統(tǒng)中。通過這種方式,你可以得到強大的分布式作圖能力,同時還能利用上現(xiàn)有的大數(shù)據(jù)處理引擎。
Cloudera Impala
Impala模型也可以部署在你現(xiàn)有的Hadoop群集上,監(jiān)視所有的查詢。該技術(shù)和MapReduce一樣,具有強大的批處理能力,而且Impala對于實時的SQL查詢也有很好的效果,通過高效的SQL查詢,你可以很快的了解到大數(shù)據(jù)平臺上的數(shù)據(jù)。
Gephi
它可以用來對信息進行關(guān)聯(lián)和量化處理,通過為數(shù)據(jù)創(chuàng)建功能強大的可視化效果,你可以從數(shù)據(jù)中得到不一樣的洞察力。Gephi已經(jīng)支持多個圖表類型,而且可以在具有上百萬個節(jié)點的大型網(wǎng)絡(luò)上運行。Gephi具有活躍的用戶社區(qū),Gephi還提供了大量的插件,可以和現(xiàn)有系統(tǒng)完美的集成到一起,它還可以對復(fù)雜的IT連接、分布式系統(tǒng)中各個節(jié)點、數(shù)據(jù)流等信息進行可視化分析。
MongoDB
這個堅實的平臺一直被很多組織推崇,它在大數(shù)據(jù)管理上有極好的性能。MongoDB最初是由DoubleClick公司的員工創(chuàng)建,現(xiàn)在該技術(shù)已經(jīng)被廣泛的應(yīng)用于大數(shù)據(jù)管理。MongoDB是一個應(yīng)用開源技術(shù)開發(fā)的NoSQL數(shù)據(jù)庫,可以用于在JSON這樣的平臺上存儲和處理數(shù)據(jù)。目前,紐約時報、Craigslist以及眾多企業(yè)都采用了MongoDB,幫助他們管理大型數(shù)據(jù)集。(Couchbase服務(wù)器也作為一個參考)。
十大頂尖公司:
Amazon Web Services
Forrester將AWS稱為“云霸主”,談到云計算領(lǐng)域的大數(shù)據(jù),那就不得不提到亞馬遜。該公司的Hadoop產(chǎn)品被稱為EMR(Elastic Map Reduce),AWS解釋這款產(chǎn)品采用了Hadoop技術(shù)來提供大數(shù)據(jù)管理服務(wù),但它不是純開源Hadoop,經(jīng)過修改后現(xiàn)在被專門用在AWS云上。
Forrester稱EMR有很好的市場前景。很多公司基于EMR為客戶提供服務(wù),有一些公司將EMR應(yīng)用于數(shù)據(jù)查詢、建模、集成和管理。而且AWS還在創(chuàng)新,F(xiàn)orrester稱未來EMR可以基于工作量的需要自動縮放調(diào)整大小。亞馬遜計劃為其產(chǎn)品和服務(wù)提供更強大的EMR支持,包括它的RedShift數(shù)據(jù)倉庫、新公布的Kenesis實時處理引擎以及計劃中的NoSQL數(shù)據(jù)庫和商業(yè)智能工具。不過AWS還沒有自己的Hadoop發(fā)行版。
Cloudera
Cloudera有開源Hadoop的發(fā)行版,這個發(fā)行版采用了Apache Hadoop開源項目的很多技術(shù),不過基于這些技術(shù)的發(fā)行版也有很大的進步。Cloudera為它的Hadoop發(fā)行版開發(fā)了很多功能,包括Cloudera管理器,用于管理和監(jiān)控,以及名為Impala的SQL引擎等。Cloudera的Hadoop發(fā)行版基于開源Hadoop,但也不是純開源的產(chǎn)品。當(dāng)Cloudera的客戶需要Hadoop不具備的某些功能時,Cloudera的工程師們就會實現(xiàn)這些功能,或者找一個擁有這項技術(shù)的合作伙伴。Forrester表示:“Cloudera的創(chuàng)新方法忠于核心Hadoop,但因為其可實現(xiàn)快速創(chuàng)新并積極滿足客戶需求,這一點使它不同于其他那些供應(yīng)商?!蹦壳?,Cloudera的平臺已經(jīng)擁有200多個付費客戶,一些客戶在Cloudera的技術(shù)支持下已經(jīng)可以跨1000多個節(jié)點實現(xiàn)對PB級數(shù)據(jù)的有效管理。
Hortonworks
和Cloudera一樣,Hortonworks是一個純粹的Hadoop技術(shù)公司。與Cloudera不同的是,Hortonworks堅信開源Hadoop比任何其他供應(yīng)商的Hadoop發(fā)行版都要強大。Hortonworks的目標(biāo)是建立Hadoop生態(tài)圈和Hadoop用戶社區(qū),推進開源項目的發(fā)展。Hortonworks平臺和開源Hadoop聯(lián)系緊密,公司管理人員表示這會給用戶帶來好處,因為它可以防止被供應(yīng)商套牢(如果Hortonworks的客戶想要離開這個平臺,他們可以輕松轉(zhuǎn)向其他開源平臺)。這并不是說Hortonworks完全依賴開源Hadoop技術(shù),而是因為該公司將其所有開發(fā)的成果回報給了開源社區(qū),比如Ambari,這個工具就是由Hortonworks開發(fā)而成,用來填充集群管理項目漏洞。Hortonworks的方案已經(jīng)得到了Teradata、Microsoft、Red Hat和SAP這些供應(yīng)商的支持。
IBM
當(dāng)企業(yè)考慮一些大的IT項目時,很多人首先會想到IBM。IBM是Hadoop項目的主要參與者之一,F(xiàn)orrester稱IBM已有100多個Hadoop部署,它的很多客戶都有PB級的數(shù)據(jù)。IBM在網(wǎng)格計算、全球數(shù)據(jù)中心和企業(yè)大數(shù)據(jù)項目實施等眾多領(lǐng)域有著豐富的經(jīng)驗?!癐BM計劃繼續(xù)整合SPSS分析、高性能計算、BI工具、數(shù)據(jù)管理和建模、應(yīng)對高性能計算的工作負(fù)載管理等眾多技術(shù)。”
Intel
和AWS類似,英特爾不斷改進和優(yōu)化Hadoop使其運行在自己的硬件上,具體來說,就是讓Hadoop運行在其至強芯片上,幫助用戶打破Hadoop系統(tǒng)的一些限制,使軟件和硬件結(jié)合的更好,英特爾的Hadoop發(fā)行版在上述方面做得比較好。Forrester指出英特爾在最近才推出這個產(chǎn)品,所以公司在未來還有很多改進的可能,英特爾和微軟都被認(rèn)為是Hadoop市場上的潛力股。
MapR Technologies
MapR的Hadoop發(fā)行版目前為止也許是最好的了,不過很多人可能都沒有聽說過。Forrester對Hadoop用戶的調(diào)查顯示,MapR的評級最高,其發(fā)行版在架構(gòu)和數(shù)據(jù)處理能力上都獲得了最高分。MapR已將一套特殊功能融入其Hadoop發(fā)行版中。例如網(wǎng)絡(luò)文件系統(tǒng)(NFS)、災(zāi)難恢復(fù)以及高可用性功能。Forrester說MapR在Hadoop市場上沒有Cloudera和Hortonworks那樣的知名度,MapR要成為一個真正的大企業(yè),還需要加強伙伴關(guān)系和市場營銷。
Microsoft
微軟在開源軟件問題上一直很低調(diào),但在大數(shù)據(jù)形勢下,它不得不考慮讓W(xué)indows也兼容Hadoop,它還積極投入到開源項目中,以更廣泛地推動Hadoop生態(tài)圈的發(fā)展。我們可以在微軟的公共云Windows Azure HDInsight產(chǎn)品中看到其成果。微軟的Hadoop服務(wù)基于Hortonworks的發(fā)行版,而且是為Azure量身定制的。
微軟也有一些其他的項目,包括名為Polybase的項目,讓Hadoop查詢實現(xiàn)了SQLServer查詢的一些功能。Forrester說:“微軟在數(shù)據(jù)庫、數(shù)據(jù)倉庫、云、OLAP、BI、電子表格(包括PowerPivot)、協(xié)作和開發(fā)工具市場上有很大優(yōu)勢,而且微軟擁有龐大的用戶群,但要在Hadoop這個領(lǐng)域成為行業(yè)領(lǐng)導(dǎo)者還有很遠(yuǎn)的路要走?!?/p>
Pivotal Software
EMC和Vmware部分大數(shù)據(jù)業(yè)務(wù)分拆組合產(chǎn)生了Pivotal。Pivotal一直努力構(gòu)建一個性能優(yōu)越的Hadoop發(fā)行版,為此,Pivotal在開源Hadoop的基礎(chǔ)上又添加了一些新的工具,包括一個名為HAWQ的SQL引擎以及一個專門解決大數(shù)據(jù)問題的Hadoop應(yīng)用。Forrester稱Pivotal Hadoop平臺的優(yōu)勢在于它整合了Pivotal、EMC、Vmware的眾多技術(shù),Pivotal的真正優(yōu)勢實際上等于EMC和Vmware兩大公司為其撐腰。到目前為止,Pivotal的用戶還不到100個,而且大多是中小型客戶。
Teradata
對于Teradata來說,Hadoop既是一種威脅也是一種機遇。數(shù)據(jù)管理,特別是關(guān)于SQL和關(guān)系數(shù)據(jù)庫這一領(lǐng)域是Teradata的專長。所以像Hadoop這樣的NoSQL平臺崛起可能會威脅到Teradata。相反,Teradata接受了Hadoop,通過與Hortonworks合作,Teradata在Hadoop平臺集成了SQL技術(shù),這使Teradata的客戶可以在Hadoop平臺上方便地使用存儲在Teradata數(shù)據(jù)倉庫中的數(shù)據(jù)。
AMPLab
通過將數(shù)據(jù)轉(zhuǎn)變?yōu)樾畔?,我們才可以理解世界,而這也正是AMPLab所做的。AMPLab致力于機器學(xué)習(xí)、數(shù)據(jù)挖掘、數(shù)據(jù)庫、信息檢索、自然語言處理和語音識別等多個領(lǐng)域,努力改進對信息包括不透明數(shù)據(jù)集內(nèi)信息的甄別技術(shù)。除了Spark,開源分布式SQL查詢引擎Shark也源于AMPLab,Shark具有極高的查詢效率,具有良好的兼容性和可擴展性。近幾年的發(fā)展使計算機科學(xué)進入到全新的時代,而AMPLab為我們設(shè)想一個運用大數(shù)據(jù)、云計算、通信等各種資源和技術(shù)靈活解決難題的方案,以應(yīng)對越來越復(fù)雜的各種難題。
nosql數(shù)據(jù)庫的四種類型如下:
1.key-value鍵值存儲數(shù)據(jù)庫:
相關(guān)產(chǎn)品: Redis、Riak、SimpleDB、Chordless、Scalaris、Memcached.
主要應(yīng)用: 內(nèi)容緩存,處理大量數(shù)據(jù)的高負(fù)載訪問,也用于系統(tǒng)日志。
優(yōu)點:查找速度快,大量操作時性能高。
2.列存儲數(shù)據(jù)庫:
相關(guān)產(chǎn)品: BigTable、HBase、Cassandra、HadoopDB、GreenPlum、PNUTS.
主要應(yīng)用: 分布式數(shù)據(jù)的儲存與管理。
優(yōu)點:查找速度快,可擴展性強,容易進行分布式擴展。
缺點:功能相對局限。
3.文檔型數(shù)據(jù)庫
相關(guān)產(chǎn)品:MongoDB、CouchDB、ThruDB、CloudKit、Perservere、Jackrabbit.
主要應(yīng)用: web應(yīng)用,管理面向文檔的數(shù)據(jù)或者類似的半結(jié)構(gòu)化數(shù)據(jù)。
優(yōu)點:數(shù)據(jù)結(jié)構(gòu)靈活,表結(jié)構(gòu)可變,復(fù)雜性低。
缺點:查詢效率低,且缺乏統(tǒng)一的查詢語言。
4.Graph圖形數(shù)據(jù)庫
相關(guān)產(chǎn)品: Neo4J、OrientDB、InfoGrid、GraphDB.
主要應(yīng)用: 復(fù)雜,互連接,低結(jié)構(gòu)化的圖結(jié)構(gòu)場合, 專注構(gòu)建關(guān)系圖譜。
優(yōu)點: 利用圖結(jié)構(gòu)相關(guān)算法, 可用于構(gòu)建復(fù)雜的關(guān)系圖譜。
缺點: 復(fù)雜度高。
當(dāng)前標(biāo)題:性能最好的nosql,性能最好的蘋果手機排行榜
當(dāng)前地址:http://chinadenli.net/article32/hohesc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站設(shè)計、虛擬主機、Google、軟件開發(fā)、網(wǎng)站導(dǎo)航、搜索引擎優(yōu)化
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)