本文一共分為上下兩部分。我們將針對大數(shù)據(jù)開源工具不同的用處來進行分類坦袍,并且附上了官網(wǎng)和部分下載鏈接十厢,希望能給做大數(shù)據(jù)的朋友做個參考。下面是第一部分捂齐。
查詢引擎
一蛮放、Phoenix
貢獻者::Salesforce
簡介:這是一個Java中間層,可以讓開發(fā)者在Apache HBase上執(zhí)行SQL查詢辛燥。Phoenix完全使用Java編寫筛武,代碼位于GitHub上,并且提供了一個客戶端可嵌入的JDBC驅(qū)動挎塌。
Phoenix查詢引擎會將SQL查詢轉(zhuǎn)換為一個或多個HBase scan徘六,并編排執(zhí)行以生成標準的JDBC結(jié)果集。直接使用HBase API榴都、協(xié)同處理器與自定義過濾器待锈,對于簡單查詢來說,其性能量級是毫秒嘴高,對于百萬級別的行數(shù)來說竿音,其性能量級是秒。
Phoenix最值得關(guān)注的一些特性有:
?嵌入式的JDBC驅(qū)動拴驮,實現(xiàn)了大部分的java.sql接口春瞬,包括元數(shù)據(jù)API
?可以通過多部行鍵或是鍵/值單元對列進行建模
?完善的查詢支持,可以使用多個謂詞以及優(yōu)化的掃描鍵
?DDL支持:通過CREATE TABLE套啤、DROP TABLE及ALTER TABLE來添加/刪除列
?版本化的模式倉庫:當(dāng)寫入數(shù)據(jù)時宽气,快照查詢會使用恰當(dāng)?shù)哪J?/p>
?DML支持:用于逐行插入的UPSERT VALUES、用于相同或不同表之間大量數(shù)據(jù)傳輸?shù)腢PSERT ?SELECT、用于刪除行的DELETE
?通過客戶端的批處理實現(xiàn)的有限的事務(wù)支持
?單表——還沒有連接萄涯,同時二級索引也在開發(fā)當(dāng)中
?緊跟ANSI SQL標準
二绪氛、Stinger
貢獻者::Hortonworks
簡介:原叫Tez,下一代Hive,Hortonworks主導(dǎo)開發(fā)涝影,運行在YARN上的DAG計算框架枣察。
某些測試下,Stinger能提升10倍左右的性能燃逻,同時會讓Hive支持更多的SQL序目,其主要優(yōu)點包括:
?讓用戶在Hadoop獲得更多的查詢匹配。其中包括類似OVER的字句分析功能唆樊,支持WHERE查詢宛琅,讓Hive的樣式系統(tǒng)更符合SQL模型。
?優(yōu)化了Hive請求執(zhí)行計劃逗旁,優(yōu)化后請求時間減少90%嘿辟。改動了Hive執(zhí)行引擎,增加單Hive任務(wù)的被秒處理記錄數(shù)片效。
?在Hive社區(qū)中引入了新的列式文件格式(如ORC文件)红伦,提供一種更現(xiàn)代、高效和高性能的方式來儲存Hive數(shù)據(jù)淀衣。
?引入了新的運行時框架——Tez昙读,旨在消除Hive的延時和吞吐量限制。Tez通過消除不必要的task膨桥、障礙同步和對HDFS的讀寫作業(yè)來優(yōu)化Hive job蛮浑。這將優(yōu)化Hadoop內(nèi)部的執(zhí)行鏈,徹底加速Hive負載處理只嚣。
三沮稚、Presto
貢獻者::Facebook
簡介:Facebook開源的數(shù)據(jù)查詢引擎Presto ,可對250PB以上的數(shù)據(jù)進行快速地交互式分析册舞。該項目始于 2012 年秋季開始開發(fā)蕴掏,目前該項目已經(jīng)在超過 1000 名 Facebook 雇員中使用,運行超過 30000 個查詢调鲸,每日數(shù)據(jù)在 1PB 級別盛杰。Facebook 稱 Presto 的性能比諸如 Hive 和 Map*Reduce 要好上 10 倍有多。
Presto 當(dāng)前支持 ANSI SQL 的大多數(shù)特效藐石,包括聯(lián)合查詢即供、左右聯(lián)接、子查詢以及一些聚合和計算函數(shù)于微;支持近似截然不同的計數(shù)(DISTINCT COUNT)等逗嫡。
四办素、Shark
簡介:Shark即Hive on Spark,本質(zhì)上是通過Hive的HQL解析祸穷,把HQL翻譯成Spark上的RDD操作,然后通過Hive的metadata獲取數(shù)據(jù)庫里的表信息勺三,實際HDFS上的數(shù)據(jù)和文件雷滚,會由Shark獲取并放到Spark上運算。Shark的特點就是快吗坚,完全兼容Hive祈远,且可以在shell模式下使用rdd2sql()這樣的API,把HQL得到的結(jié)果集商源,繼續(xù)在scala環(huán)境下運算车份,支持自己編寫簡單的機器學(xué)習(xí)或簡單分析處理函數(shù),對HQL結(jié)果進一步分析計算牡彻。
?Shark速度快的原因除了Spark平臺提供的基于內(nèi)存迭代計算外扫沼,在設(shè)計上還存在對Spark上進行了一定的改造,主要有
?partial DAG execution:對join優(yōu)化庄吼,調(diào)節(jié)并行粒度缎除,因為Spark本身的寬依賴和窄依賴會影響并行計算和速度
基于列的壓縮和存儲:把HQL表數(shù)據(jù)按列存,每列是一個array总寻,存在JVM上器罐,避免了JVM GC低效,而壓縮和解壓相關(guān)的技術(shù)是Yahoo!提供的渐行。
結(jié)來說轰坊,Shark是一個插件式的東西,在我現(xiàn)有的Spark和Hive及hadoop-client之間祟印,在這兩套都可用的情況下肴沫,Shark只要獲取Hive的配置(還有metastore和exec等關(guān)鍵包),Spark的路徑旁理,Shark就能利用Hive和Spark樊零,把HQL解析成RDD的轉(zhuǎn)換,把數(shù)據(jù)取到Spark上運算和分析孽文。在SQL on Hadoop這塊驻襟,Shark有別于Impala,Stringer芋哭,而這些系統(tǒng)各有自己的設(shè)計思路沉衣,相對于對MR進行優(yōu)化和改進的思路,Shark的思路更加簡單明了些减牺。
五豌习、Pig
簡介:Pig是一種編程語言存谎,它簡化了Hadoop常見的工作任務(wù)。Pig可加載數(shù)據(jù)肥隆、表達轉(zhuǎn)換數(shù)據(jù)以及存儲最終結(jié)果既荚。Pig內(nèi)置的操作使得半結(jié)構(gòu)化數(shù)據(jù)變得有意義(如日志文件)。同時Pig可擴展使用Java中添加的自定義數(shù)據(jù)類型并支持數(shù)據(jù)轉(zhuǎn)換栋艳。
Pig最大的作用就是對mapreduce算法(框架)實現(xiàn)了一套shell腳本 恰聘,類似我們通常熟悉的SQL語句,在Pig中稱之為Pig Latin吸占,在這套腳本中我們可以對加載出來的數(shù)據(jù)進行排序晴叨、過濾、求和矾屯、分組(group by)兼蕊、關(guān)聯(lián)(Joining),Pig也可以由用戶自定義一些函數(shù)對數(shù)據(jù)集進行操作件蚕,也就是傳說中的UDF(user-defined functions)孙技。
六、ClouderaImpala
貢獻者::Cloudera
簡介:Cloudera Impala 可以直接為存儲在HDFS或HBase中的Hadoop數(shù)據(jù)提供快速排作,交互式的SQL查詢绪杏。除了使用相同的存儲平臺外, Impala和Apache Hive一樣也使用了相同的元數(shù)據(jù)纽绍,SQL語法(Hive SQL)蕾久,ODBC驅(qū)動和用戶接口(Hue Beeswax),這就很方便的為用戶提供了一個相似并且統(tǒng)一的平臺來進行批量或?qū)崟r查詢拌夏。
Cloudera Impala 是用來進行大數(shù)據(jù)查詢的補充工具僧著。 Impala 并沒有取代像Hive這樣基于MapReduce的分布式處理框架。Hive和其它基于MapReduce的計算框架非常適合長時間運行的批處理作業(yè)障簿,例如那些涉及到批量 Extract盹愚、Transform、Load 站故,即需要進行ETL作業(yè)皆怕。
Impala 提供了:
?數(shù)據(jù)科學(xué)家或數(shù)據(jù)分析師已經(jīng)熟知的SQL接口
?能夠在Apache Hadoop 的大數(shù)據(jù)中進行交互式數(shù)據(jù)查詢
? Single system for big data processing and analytics so customers can avoid costly modeling and ETL just for analytics
七、ApacheDrill
貢獻者::MapR
簡介:Apache Drill是是一個能夠?qū)Υ髷?shù)據(jù)進行交互分析西篓、開源的分布式系統(tǒng)愈腾,且基于Google Dremel實現(xiàn),它能夠運行在上千個節(jié)點的服務(wù)器集群上岂津,且能在幾秒內(nèi)處理PB級或者萬億條的數(shù)據(jù)記錄虱黄。Drill能夠幫助企業(yè)用戶快速、高效地進行Hadoop數(shù)據(jù)查詢和企業(yè)級大數(shù)據(jù)分析吮成。Drill于2012年8月份由Apache推出橱乱。
從Drill官方對其架構(gòu)的介紹中得知辜梳,其具有適于實時的分析和快速的應(yīng)用開發(fā)、適于半結(jié)構(gòu)化/嵌套數(shù)據(jù)的分析泳叠、兼容現(xiàn)有的SQL環(huán)境和Apache Hive等特征作瞄。另外,Drill的核心模塊是Drillbit服務(wù)危纫,該服務(wù)模塊包括遠程訪問子模塊粉洼、SQL解析器、查詢優(yōu)化器叶摄、任務(wù)計劃執(zhí)行引擎、存儲插件接口(DFS安拟、HBase蛤吓、Hive等的接口)、分布式緩存模塊等幾部分糠赦,如下圖所示:
八会傲、Apache?Tajo
簡介:Apache Tajo項目的目的是在HDFS之上構(gòu)建一個先進的數(shù)據(jù)倉庫系統(tǒng)。Tajo將自己標榜為一個“大數(shù)據(jù)倉庫”拙泽,但是它好像和之前介紹的那些低延遲查詢引擎類似淌山。雖然它支持外部表和Hive數(shù)據(jù)集(通過HCatalog),但是它的重點是數(shù)據(jù)管理顾瞻,提供低延遲的數(shù)據(jù)訪問泼疑,以及為更傳統(tǒng)的ETL提供工具。它也需要在數(shù)據(jù)節(jié)點上部署Tajo特定的工作進程荷荤。
Tajo的功能包括:
?ANSI SQL兼容
?JDBC 驅(qū)動
?集成Hive metastore能夠訪問Hive數(shù)據(jù)集
?一個命令行客戶端
?一個自定義函數(shù)API
九退渗、Hive
簡介:hive是基于Hadoop的一個數(shù)據(jù)倉庫工具,可以將結(jié)構(gòu)化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表蕴纳,并提供簡單的sql查詢功能会油,可以將sql語句轉(zhuǎn)換為MapReduce任務(wù)進行運行。 其優(yōu)點是學(xué)習(xí)成本低古毛,可以通過類SQL語句快速實現(xiàn)簡單的MapReduce統(tǒng)計翻翩,不必開發(fā)專門的MapReduce應(yīng)用,十分適合數(shù)據(jù)倉庫的統(tǒng)計分析稻薇。
流式計算
一嫂冻、Facebook?Puma
貢獻者:Facebook
簡介:實時數(shù)據(jù)流分析
二、Twitter Rainbird
貢獻者:Twitter
簡介:Rainbird一款基于Zookeeper, Cassandra, Scribe, Thrift的分布式實時統(tǒng)計系統(tǒng)塞椎,這些基礎(chǔ)組件的基本功能如下:
? Zookeeper絮吵,Hadoop子項目中的一款分布式協(xié)調(diào)系統(tǒng),用于控制分布式系統(tǒng)中各個組件中的一致性忱屑。
?Cassandra蹬敲,NoSQL中一款非常出色的產(chǎn)品暇昂,集合了Dynamo和Bigtable特性的分布式存儲系統(tǒng),用于存儲需要進行統(tǒng)計的數(shù)據(jù)伴嗡,統(tǒng)計數(shù)據(jù)急波,并且提供客戶端進行統(tǒng)計數(shù)據(jù)的查詢。(需要使用分布式Counter補丁CASSANDRA-1072)
??Scribe瘪校,F(xiàn)acebook開源的一款分布式日志收集系統(tǒng)澄暮,用于在系統(tǒng)中將各個需要統(tǒng)計的數(shù)據(jù)源收集到Cassandra中。
??Thrift阱扬,F(xiàn)acebook開源的一款跨語言C/S網(wǎng)絡(luò)通信框架泣懊,開發(fā)人員基于這個框架可以輕易地開發(fā)C/S應(yīng)用。
用處
Rainbird可以用于實時數(shù)據(jù)的統(tǒng)計:
?統(tǒng)計網(wǎng)站中每一個頁面麻惶,域名的點擊次數(shù)
?內(nèi)部系統(tǒng)的運行監(jiān)控(統(tǒng)計被監(jiān)控服務(wù)器的運行狀態(tài))
?記錄最大值和最小值
三馍刮、Yahoo S4
貢獻者:Yahoo
簡介:S4(Simple Scalable Streaming System)最初是Yahoo!為提高搜索廣告有效點擊率的問題而開發(fā)的一個平臺,通過統(tǒng)計分析用戶對廣告的點擊率窃蹋,排除相關(guān)度低的廣告卡啰,提升點擊率。目前該項目剛啟動不久警没,所以也可以理解為是他們提出的一個分布式流計算(Distributed Stream Computing)的模型匈辱。
S4的設(shè)計目標是:
·提供一種簡單的編程接口來處理數(shù)據(jù)流
·設(shè)計一個可以在普通硬件之上可擴展的高可用集群。
·通過在每個處理節(jié)點使用本地內(nèi)存杀迹,避免磁盤I/O瓶頸達到最小化延遲
·使用一個去中心的亡脸,對等架構(gòu);所有節(jié)點提供相同的功能和職責(zé)树酪。沒有擔(dān)負特殊責(zé)任的中心節(jié)點梗掰。這大大簡化了部署和維護。
·使用可插拔的架構(gòu)嗅回,使設(shè)計盡可能的即通用又可定制化及穗。
·友好的設(shè)計理念,易于編程绵载,具有靈活的彈性
四埂陆、TwitterStorm
貢獻者:Twitter
簡介:Storm是Twitter開源的一個類似于Hadoop的實時數(shù)據(jù)處理框架,它原來是由BackType開發(fā)娃豹,后BackType被Twitter收購焚虱,將Storm作為Twitter的實時數(shù)據(jù)分析系統(tǒng)。
實時數(shù)據(jù)處理的應(yīng)用場景很廣泛懂版,例如商品推薦鹃栽,廣告投放,它能根據(jù)當(dāng)前情景上下文(用戶偏好躯畴,地理位置民鼓,已發(fā)生的查詢和點擊等)來估計用戶點擊的可能性并實時做出調(diào)整薇芝。
storm的三大作用領(lǐng)域:
1.信息流處理(Stream Processing)
Storm可以用來實時處理新數(shù)據(jù)和更新數(shù)據(jù)庫,兼具容錯性和可擴展性,它 可以用來處理源源不斷的消息丰嘉,并將處理之后的結(jié)果保存到持久化介質(zhì)中夯到。
2.連續(xù)計算(Continuous Computation)
Storm可以進行連續(xù)查詢并把結(jié)果即時反饋給客戶,比如將Twitter上的熱門話題發(fā)送到客戶端饮亏。
3.分布式遠程過程調(diào)用(Distributed RPC)
除此之外耍贾,Storm也被廣泛用于以下方面:
精確的廣告推送
實時日志的處理
迭代計算
一、Apache Hama
簡介:Apache Hama是一個純BSP(Bulk Synchronous Parallel)計算框架路幸,模仿了Google的Pregel荐开。用來處理大規(guī)模的科學(xué)計算,特別是矩陣和圖計算简肴。
?建立在Hadoop上的分布式并行計算模型晃听。
?基于 Map/Reduce 和 Bulk Synchronous 的實現(xiàn)框架。
?運行環(huán)境需要關(guān)聯(lián) Zookeeper着帽、HBase、HDFS 組件移层。
Hama中有2個主要的模型:
– 矩陣計算(Matrix package)
– 面向圖計算(Graph package)
二仍翰、Apache?Giraph
代碼托管地址:GitHub
簡介:Apache Giraph是一個可伸縮的分布式迭代圖處理系統(tǒng),靈感來自BSP(bulk synchronous parallel)和Google的Pregel观话,與它們 區(qū)別于則是是開源予借、基于 Hadoop 的架構(gòu)等。
Giraph處理平臺適用于運行大規(guī)模的邏輯計算频蛔,比如頁面排行灵迫、共享鏈接、基于個性化排行等晦溪。Giraph專注于社交圖計算瀑粥,被Facebook作為其Open Graph工具的核心,幾分鐘內(nèi)處理數(shù)萬億次用戶及其行為之間的連接三圆。
三狞换、HaLoop
簡介:迭代的MapReduce,HaLoop——適用于迭代計算的Hadoop 舟肉。
Hadoop與HaLoop的不同
與Hadoop比較的四點改變:
1.提供了一套新的編程接口修噪,更加適用于迭代計算;
HaLoop給迭代計算一個抽象的遞歸公式:
2.HaLoop的master進行job內(nèi)的循環(huán)控制路媚,直到迭代計算結(jié)束黄琼;
3.Task Scheduler也進行了修改,使得任務(wù)能夠盡量滿足data locality
4.slave nodes對數(shù)據(jù)進行cache并index索引整慎,索引也以文件的形式保存在本地磁盤脏款。
四围苫、Twister
簡介:Twister, 迭代式MapReduce框架弛矛,Twister是由一個印度人開發(fā)的够吩,其架構(gòu)如下:
在Twister中,大文件不會自動被切割成一個一個block丈氓,因而用戶需提前把文件分成一個一個小文件周循,以供每個task處理。在map階段万俗,經(jīng)過map()處理完的結(jié)果被放在分布式內(nèi)存中湾笛,然后通過一個broker network(NaradaBroking系統(tǒng))將數(shù)據(jù)push給各個reduce task(Twister假設(shè)內(nèi)存足夠大,中間數(shù)據(jù)可以全部放在內(nèi)存中)闰歪;在reduce階段嚎研,所有reduce task產(chǎn)生的結(jié)果通過一個combine操作進行歸并,此時库倘,用戶可以進行條件判定临扮, 確定迭代是否結(jié)束尉姨。combine后的數(shù)據(jù)直接被送給map task佩番,開始新一輪的迭代。為了提高容錯性斥废,Twister每隔一段時間會將map task和reduce task產(chǎn)生的結(jié)果寫到磁盤上饱亿,這樣蚜退,一旦某個task失敗,它可以從最近的備份中獲取輸入彪笼,重新計算钻注。
為了避免每次迭代重新創(chuàng)建task,Twister維護了一個task pool配猫,每次需要task時直接從pool中取幅恋。在Twister中,所有消息和數(shù)據(jù)都是通過broker network傳遞的泵肄,該broker network是一個獨立的模塊佳遣,目前支持NaradaBroking和ActiveMQ。
離線計算
一凡伊、HadoopMapReduce
簡介:MapReduce是一種編程模型零渐,用于大規(guī)模數(shù)據(jù)集(大于1TB)的并行運算。概念”Map(映射)”和”Reduce(歸約)”系忙,和它們的主要思想诵盼,都是從函數(shù)式編程語言里借來的,還有從矢量編程語言里借來的特性。它極大地方便了編程人員在不會分布式并行編程的情況下风宁,將自己的程序運行在分布式系統(tǒng)上洁墙。 當(dāng)前的軟件實現(xiàn)是指定一個Map(映射)函數(shù),用來把一組鍵值對映射成一組新的鍵值對戒财,指定并發(fā)的Reduce(歸約)函數(shù)热监,用來保證所有映射的鍵值對中的每一個共享相同的鍵組。
二饮寞、Berkeley Spark
簡介:Spark是UC Berkeley AMP lab所開源的類Hadoop MapReduce的通用的并行孝扛,Spark,擁有Hadoop MapReduce所具有的優(yōu)點幽崩;但不同于MapReduce的是Job中間輸出結(jié)果可以保存在內(nèi)存中苦始,從而不再需要讀寫HDFS,因此Spark能更好地適用于數(shù)據(jù)挖掘與機器學(xué)習(xí)等需要迭代的map reduce的算法慌申。
三陌选、DataTorrent
簡介:DataTorrent基于Hadoop 2.x構(gòu)建,是一個實時的蹄溉、有容錯能力的數(shù)據(jù)流式處理和分析平臺咨油,它使用本地Hadoop應(yīng)用程序,而這些應(yīng)用程序可以與執(zhí)行其它任務(wù)柒爵,如批處理役电,的應(yīng)用程序共存。該平臺的架構(gòu)如下圖所示:
相關(guān)文章:DataTorrent 1.0每秒處理超過10億個實時事件
DataTorrent 將數(shù)據(jù)分析速度從“實時”提升至“現(xiàn)在時”
鍵值存儲
一餐弱、LevelDB
貢獻者:Google
簡介:Leveldb是一個google實現(xiàn)的非常高效的kv數(shù)據(jù)庫宴霸,目前的版本1.2能夠支持billion級別的數(shù)據(jù)量了囱晴。 在這個數(shù)量級別下還有著非常高的性能膏蚓,主要歸功于它的良好的設(shè)計。特別是LMS算法畸写。
LevelDB 是單進程的服務(wù)驮瞧,性能非常之高,在一臺4核Q6600的CPU機器上枯芬,每秒鐘寫數(shù)據(jù)超過40w论笔,而隨機讀的性能每秒鐘超過10w。
此處隨機讀是完全命中內(nèi)存的速度千所,如果是不命中 速度大大下降狂魔。
二、RocksDB
貢獻者:facebook
簡介:RocksDB雖然在代碼層面上是在LevelDB原有的代碼上進行開發(fā)的淫痰,但卻借鑒了Apache HBase的一些好的idea最楷。在云計算橫行的年代,開口不離Hadoop,RocksDB也開始支持HDFS籽孙,允許從HDFS讀取數(shù)據(jù)烈评。RocksDB支持一次獲取多個K-V,還支持Key范圍查找犯建。LevelDB只能獲取單個Key讲冠。
RocksDB除了簡單的Put、Delete操作适瓦,還提供了一個Merge操作竿开,說是為了對多個Put操作進行合并。
RocksDB提供一些方便的工具犹菇,這些工具包含解析sst文件中的K-V記錄德迹、解析MANIFEST文件的內(nèi)容等。RocksDB支持多線程合并揭芍,而LevelDB是單線程合并的胳搞。
三、HyperDex
貢獻者:Facebook
HyperDex是一個分布式称杨、可搜索的鍵值存儲系統(tǒng)肌毅,特性如下:
分布式KV存儲,系統(tǒng)性能能夠隨節(jié)點數(shù)目線性擴展
吞吐和延時都能秒殺現(xiàn)在風(fēng)頭正勁的MonogDB姑原,吞吐甚至強于Redis
使用了hyperspace hashing技術(shù)悬而,使得對存儲的K-V的任意屬性進行查詢成為可能
官網(wǎng):http://hyperdex.org/
四、TokyoCabinet
日本人Mikio?Hirabayashi(平林干雄)開發(fā)的一款DBM數(shù)據(jù)庫锭汛。Tokyo Cabinet 是一個DBM的實現(xiàn)笨奠。這里的數(shù)據(jù)庫由一系列key-value對的記錄構(gòu)成。key和value都可以是任意長度的字節(jié)序列,既可以是二進制也可以是字符串唤殴。這里沒有數(shù)據(jù)類型和數(shù)據(jù)表的概念般婆。
當(dāng) 做為Hash表數(shù)據(jù)庫使用時,每個key必須是不同的,因此無法存儲兩個key相同的值朵逝。提供了以下訪問方法:提供key,value參數(shù)來存儲蔚袍,按 key刪除記錄,按key來讀取記錄配名,另外啤咽,遍歷key也被支持,雖然順序是任意的不能被保證渠脉。這些方法跟Unix標準的DBM,例如GDBM,NDBM 等等是相同的宇整,但是比它們的性能要好得多(因此可以替代它們) 。下一代KV存儲系統(tǒng)芋膘,支持strings鳞青、integers涩哟、floats、lists盼玄、maps和sets等豐富的數(shù)據(jù)類型贴彼。
五、Voldemort
Voldemort是一個分布式鍵值存儲系統(tǒng)埃儿,是Amazon’s Dynamo的一個開源克隆器仗。特性如下:
支持自動復(fù)制數(shù)據(jù)到多個服務(wù)器上。
支持數(shù)據(jù)自動分割所以每個服務(wù)器只包含總數(shù)據(jù)的一個子集童番。
提供服務(wù)器故障透明處理功能精钮。
支持可撥插的序化支持,以實現(xiàn)復(fù)雜的鍵-值存儲剃斧,它能夠很好的5.集成常用的序化框架如:Protocol Buffers轨香、Thrift、Avro和Java Serialization幼东。
數(shù)據(jù)項都被標識版本能夠在發(fā)生故障時盡量保持數(shù)據(jù)的完整性而不會影響系統(tǒng)的可用性臂容。
每個節(jié)點相互獨立,互不影響根蟹。
支持可插拔的數(shù)據(jù)放置策略
官網(wǎng):http://project-voldemort.com/
六脓杉、Amazon?Dynamo
貢獻者:亞馬遜
簡介:Amazon Dynamo 是一個經(jīng)典的分布式Key-Value 存儲系統(tǒng),具備去中心化简逮,高可用性球散,高擴展性的特點,但是為了達到這個目標在很多場景中犧牲了一致性散庶。Dynamo在Amazon中得到了成功的應(yīng)用蕉堰,能夠跨數(shù)據(jù)中心部署于上萬個結(jié)點上提供服務(wù),它的設(shè)計思想也被后續(xù)的許多分布式系統(tǒng)借鑒悲龟。如近來火熱的Cassandra屋讶,實際上就是基本照搬了Dynamo的P2P架構(gòu),同時融合了BigTable的數(shù)據(jù)模型及存儲算法躲舌。
七丑婿、Tair
貢獻者:淘寶
簡介:tair 是淘寶自己開發(fā)的一個分布式 key/value 存儲引擎. tair 分為持久化和非持久化兩種使用方式. 非持久化的 tair 可以看成是一個分布式緩存. 持久化的 tair 將數(shù)據(jù)存放于磁盤中. 為了解決磁盤損壞導(dǎo)致數(shù)據(jù)丟失, tair 可以配置數(shù)據(jù)的備份數(shù)目, tair 自動將一份數(shù)據(jù)的不同備份放到不同的主機上, 當(dāng)有主機發(fā)生異常, 無法正常提供服務(wù)的時候, 其于的備份會繼續(xù)提供服務(wù).tair 的總體結(jié)構(gòu)
tair 作為一個分布式系統(tǒng), 是由一個中心控制節(jié)點和一系列的服務(wù)節(jié)點組成. 我們稱中心控制節(jié)點為config server. 服務(wù)節(jié)點是data server. config server 負責(zé)管理所有的data server, 維護data server的狀態(tài)信息. data server 對外提供各種數(shù)據(jù)服務(wù), 并以心跳的形式將自身狀況匯報給config server. config server是控制點, 而且是單點, 目前采用一主一備的形式來保證其可靠性. 所有的 data server 地位都是等價的.
八性雄、Apache?Accumulo
Apache Accumulo 是一個可靠的没卸、可伸縮的、高性能的排序分布式的 Key-Value 存儲解決方案秒旋,基于單元訪問控制以及可定制的服務(wù)器端處理约计。Accumulo使用 Google BigTable 設(shè)計思路,基于 Apache Hadoop迁筛、Zookeeper 和 Thrift 構(gòu)建煤蚌。
官網(wǎng):http://accumulo.apache.org/
九、Redis
Redis是一個高性能的key-value存儲系統(tǒng),和Memcached類似尉桩,它支持存儲的value類型相對更多筒占,包括string(字符串)、list(鏈表)蜘犁、set(集合)和zset(有序集合)翰苫。與memcached一樣,為了保證效率这橙,數(shù)據(jù)都是緩存在內(nèi)存中奏窑,區(qū)別的是Redis會周期性的把更新的數(shù)據(jù)寫入磁盤或者把修改操作寫入追加的記錄文件,并且在此基礎(chǔ)上實現(xiàn)了主從同步屈扎。
Redis的出現(xiàn)埃唯,很大程度補償了memcached這類key/value存儲的不足,在部分場合可以對關(guān)系數(shù)據(jù)庫起到很好的補充作用鹰晨。它提供了Python墨叛、Ruby、Erlang模蜡、PHP客戶端巍实,使用很方便。
官網(wǎng):http://redis.io/
表格存儲
一哩牍、OceanBase
貢獻者:阿里巴巴
相關(guān)文章:26頁PPT解密支撐支付寶交易的分布式數(shù)據(jù)庫系統(tǒng)——OceanBase
簡介:OceanBase是一個支持海量數(shù)據(jù)的高性能分布式數(shù)據(jù)庫系統(tǒng)棚潦,實現(xiàn)了數(shù)千億條記錄、數(shù)百TB數(shù)據(jù)上的跨行跨表事務(wù)膝昆,由淘寶核心系統(tǒng)研發(fā)部丸边、運維、DBA荚孵、廣告妹窖、應(yīng)用研發(fā)等部門共同完成。在設(shè)計和實現(xiàn)OceanBase的時候暫時摒棄了不緊急的DBMS的功能收叶,例如臨時表骄呼,視圖(view),研發(fā)團隊把有限的資源集中到關(guān)鍵點上判没,當(dāng)前 OceanBase主要解決數(shù)據(jù)更新一致性蜓萄、高性能的跨表讀事務(wù)、范圍查詢澄峰、join嫉沽、數(shù)據(jù)全量及增量dump、批量數(shù)據(jù)導(dǎo)入俏竞。
目前OceanBase已經(jīng)應(yīng)用于淘寶收藏夾绸硕,用于存儲淘寶用戶收藏條目和具體的商品堂竟、店鋪信息,每天支持4~5千萬的更新操作玻佩。等待上線的應(yīng)用還包括CTU出嘹、SNS等,每天更新超過20億咬崔,更新數(shù)據(jù)量超過2.5TB疚漆,并會逐步在淘寶內(nèi)部推廣。
OceanBase 0.3.1在Github開源刁赦,開源版本為Revision:12336娶聘。
官網(wǎng):http://alibaba.github.io/oceanbase/
二、Amazon?SimpleDB
貢獻者:亞馬遜
Amazon SimpleDB是一個分散式數(shù)據(jù)庫甚脉,以Erlang撰寫丸升。同與Amazon EC2和亞馬遜的S3一樣作為一項Web 服務(wù),屬于亞馬遜網(wǎng)絡(luò)服務(wù)的一部分牺氨。
正如EC2和S3狡耻,SimpleDB的按照存儲量,在互聯(lián)網(wǎng)上的傳輸量和吞吐量收取費用猴凹。 在2008年12月1日夷狰,亞馬遜推出了新的定價策略,提供了免費1 GB的數(shù)據(jù)和25機器小時的自由層(Free Tire)郊霎。 將其中的數(shù)據(jù)轉(zhuǎn)移到其他亞馬遜網(wǎng)絡(luò)服務(wù)是免費的沼头。
它是一個可大規(guī)模伸縮、用 Erlang 編寫的高可用數(shù)據(jù)存儲书劝。
官網(wǎng):http://aws.amazon.com/cn/simpledb/
三进倍、Vertica
貢獻者:惠普
簡介:惠普2011年2月份起始3月21號完成收購Vertica。Vertica基于列存儲购对』ィ基于列存儲的設(shè)計相比傳統(tǒng)面向行存儲的數(shù)據(jù)庫具有巨大的優(yōu)勢。同時Vertica支持MPP(massively parallel processing)等技術(shù)骡苞,查詢數(shù)據(jù)時Vertica只需取得需要的列垂蜗,而不是被選擇行的所有數(shù)據(jù),其平均性能可提高50x-1000x倍解幽。(查詢性能高速度快)
Vertica的設(shè)計者多次表示他們的產(chǎn)品圍繞著高性能和高可用性設(shè)計贴见。由于對MPP技術(shù)的支持,可提供對粒度亚铁,可伸縮性和可用性的優(yōu)勢蝇刀。每個節(jié)點完全獨立運作螟加,完全無共享架構(gòu)徘溢,降低對共享資源的系統(tǒng)競爭吞琐。
Vertica的數(shù)據(jù)庫使用標準的SQL查詢,同時Vertica的架構(gòu)非常適合云計算然爆,包括虛擬化站粟,分布式多節(jié)點運行等,并且可以和Hadoop/MapReduce進行集成曾雕。
Vertica官網(wǎng):http://www.vertica.com/
四奴烙、Cassandra
貢獻者:facebook
相關(guān)文章:開源分布式NoSQL數(shù)據(jù)庫系統(tǒng)——CassandraCassandra與HBase的大數(shù)據(jù)對決 誰是勝者?
簡介:Cassandra是一套開源分布式NoSQL數(shù)據(jù)庫系統(tǒng)剖张。它最初由Facebook開發(fā)切诀,用于儲存收件箱等簡單格式數(shù)據(jù),集GoogleBigTable的數(shù)據(jù)模型與Amazon Dynamo的完全分布式的架構(gòu)于一身Facebook于2008將 Cassandra 開源搔弄,此后幅虑,由于Cassandra良好的可擴放性,被Digg顾犹、Twitter等知名Web 2.0網(wǎng)站所采納倒庵,成為了一種流行的分布式結(jié)構(gòu)化數(shù)據(jù)存儲方案。
Cassandra是一個混合型的非關(guān)系的數(shù)據(jù)庫炫刷,類似于Google的BigTable擎宝。其主要功能比Dynamo (分布式的Key-Value存儲系統(tǒng))更豐富,但支持度卻不如文檔存儲MongoDB(介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的開源產(chǎn)品浑玛,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富绍申,最像關(guān)系數(shù)據(jù)庫的。支持的數(shù)據(jù)結(jié)構(gòu)非常松散顾彰,是類似json的bjson格式失晴,因此可以存儲比較復(fù)雜的數(shù)據(jù)類型)。Cassandra最初由Facebook開發(fā)拘央,后轉(zhuǎn)變成了開源項目涂屁。它是一個網(wǎng)絡(luò)社交云計算方面理想的數(shù)據(jù)庫。以Amazon專有的完全分布式的Dynamo為基礎(chǔ)灰伟,結(jié)合了Google BigTable基于列族(Column Family)的數(shù)據(jù)模型拆又。P2P去中心化的存儲。很多方面都可以稱之為Dynamo 2.0栏账。
Cassandra官網(wǎng):http://cassandra.apache.org/
五帖族、HyperTable
簡介:Hypertable是一個開源、高性能挡爵、可伸縮的數(shù)據(jù)庫竖般,它采用與Google的Bigtable相似的模型。在過去數(shù)年中茶鹃,Google為在PC集群 上運行的可伸縮計算基礎(chǔ)設(shè)施設(shè)計建造了三個關(guān)鍵部分涣雕。
第一個關(guān)鍵的基礎(chǔ)設(shè)施是Google File System(GFS)艰亮,這是一個高可用的文件系統(tǒng),提供了一個全局的命名空間挣郭。它通過跨機器(和跨機架)的文件數(shù)據(jù)復(fù)制來達到高可用性迄埃,并因此免受傳統(tǒng) 文件存儲系統(tǒng)無法避免的許多失敗的影響,比如電源兑障、內(nèi)存和網(wǎng)絡(luò)端口等失敗侄非。第二個基礎(chǔ)設(shè)施是名為Map-Reduce的計算框架,它與GFS緊密協(xié)作流译,幫 助處理收集到的海量數(shù)據(jù)逞怨。第三個基礎(chǔ)設(shè)施是Bigtable,它是傳統(tǒng)數(shù)據(jù)庫的替代福澡。Bigtable讓你可以通過一些主鍵來組織海量數(shù)據(jù)骇钦,并實現(xiàn)高效的 查詢。Hypertable是Bigtable的一個開源實現(xiàn)竞漾,并且根據(jù)我們的想法進行了一些改進眯搭。
HyperTable官網(wǎng):http://hypertable.org/
六、FoundationDB
簡介:支持ACID事務(wù)處理的NoSQL數(shù)據(jù)庫业岁,提供非常好的性能鳞仙、數(shù)據(jù)一致性和操作彈性。
2015年1月2日笔时,F(xiàn)oundationDB已經(jīng)發(fā)布了其key-value數(shù)據(jù)庫的3.0版本棍好,主要專注于可伸縮性和性能上的改善。FoundationDB的CEO David Rosenthal在一篇博客上宣布了新的版本允耿,其中展示了FoundationDB 3.0在可伸縮性方面的數(shù)據(jù)借笙,它可以在一個32位的c3.8xlarge EC2實例上每秒寫入1440萬次;這在性能上是之前版本的36倍较锡。
除了性能和可伸縮性的改善之外业稼,F(xiàn)oundationDB 3.0還包含了對監(jiān)控支持的改善。這種監(jiān)控機制不僅僅是簡單的機器檢查蚂蕴,它添加了對多種潛在的硬件瓶頸的診斷低散,并且把那些高層級的信息整合到現(xiàn)有監(jiān)控基礎(chǔ)架構(gòu)中。
官網(wǎng):https://foundationdb.com/
七:HBase
貢獻者:?Fay Chang 所撰寫的“Bigtable
簡介:HBase是一個分布式的骡楼、面向列的開源數(shù)據(jù)庫熔号,該技術(shù)來源于 Fay Chang 所撰寫的Google論文“Bigtable:一個結(jié)構(gòu)化數(shù)據(jù)的分布式存儲系統(tǒng)”。就像Bigtable利用了Google文件系統(tǒng)(File System)所提供的分布式數(shù)據(jù)存儲一樣鸟整,HBase在Hadoop之上提供了類似于Bigtable的能力引镊。HBase是Apache的Hadoop項目的子項目。HBase不同于一般的關(guān)系數(shù)據(jù)庫,它是一個適合于非結(jié)構(gòu)化數(shù)據(jù)存儲的數(shù)據(jù)庫弟头。另一個不同的是HBase基于列的而不是基于行的模式吩抓。
官網(wǎng):http://hbase.apache.org/
文件存儲
一、CouchDB
簡介:CouchDB是用Erlang開發(fā)的面向文檔的數(shù)據(jù)庫系統(tǒng)亮瓷,最近剛剛發(fā)布了1.0版本(2010年7月14日)琴拧。CouchDB不是一個傳統(tǒng)的關(guān)系數(shù)據(jù)庫降瞳,而是面向文檔的數(shù)據(jù)庫嘱支,其數(shù)據(jù)存儲方式有點類似lucene的index文件格式,CouchDB最大的意義在于它是一個面向web應(yīng)用的新一代存儲系統(tǒng)挣饥,事實上除师,CouchDB的口號就是:下一代的Web應(yīng)用存儲系統(tǒng)。
特點:
一扔枫、CouchDB是分布式的數(shù)據(jù)庫汛聚,他可以把存儲系統(tǒng)分布到n臺物理的節(jié)點上面,并且很好的協(xié)調(diào)和同步節(jié)點之間的數(shù)據(jù)讀寫一致性短荐。這當(dāng)然也得靠Erlang無與倫比的并發(fā)特性才能做到倚舀。對于基于web的大規(guī)模應(yīng)用文檔應(yīng)用忍宋,分布式可以讓它不必像傳統(tǒng)的關(guān)系數(shù)據(jù)庫那樣分庫拆表,在應(yīng)用代碼層進行大量的改動乾闰。
二谣膳、CouchDB是面向文檔的數(shù)據(jù)庫花履,存儲半結(jié)構(gòu)化的數(shù)據(jù)旺矾,比較類似lucene的index結(jié)構(gòu)狡门,特別適合存儲文檔饶火,因此很適合CMS耍群,電話本溉瓶,地址本等應(yīng)用哼绑,在這些應(yīng)用場合,文檔數(shù)據(jù)庫要比關(guān)系數(shù)據(jù)庫更加方便块攒,性能更好励稳。
三、CouchDB支持REST API囱井,可以讓用戶使用JavaScript來操作CouchDB數(shù)據(jù)庫驹尼,也可以用JavaScript編寫查詢語句,我們可以想像一下庞呕,用AJAX技術(shù)結(jié)合CouchDB開發(fā)出來的CMS系統(tǒng)會是多么的簡單和方便新翎。
其實CouchDB只是Erlang應(yīng)用的冰山一角,在最近幾年住练,基于Erlang的應(yīng)用也得到的蓬勃的發(fā)展地啰,特別是在基于web的大規(guī)模,分布式應(yīng)用領(lǐng)域讲逛,幾乎都是Erlang的優(yōu)勢項目亏吝。
官網(wǎng):http://couchdb.apache.org/
二、MongoDB
簡介:MongoDB 是一個基于分布式文件存儲的數(shù)據(jù)庫盏混。由C++語言編寫蔚鸥。旨在為WEB應(yīng)用提供可擴展的高性能數(shù)據(jù)存儲解決方案。
MongoDB是一個介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品许赃,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富止喷,最像關(guān)系數(shù)據(jù)庫的。他支持的數(shù)據(jù)結(jié)構(gòu)非常松散混聊,是類似json的bson格式弹谁,因此可以存儲比較復(fù)雜的數(shù)據(jù)類型。Mongo最大的特點是他支持的查詢語言非常強大,其語法有點類似于面向?qū)ο蟮牟樵冋Z言僵闯,幾乎可以實現(xiàn)類似關(guān)系數(shù)據(jù)庫單表查詢的絕大部分功能卧抗,而且還支持對數(shù)據(jù)建立索引。
相關(guān)文章:MongoDB的基本特性與內(nèi)部構(gòu)造大數(shù)據(jù)吃香 創(chuàng)業(yè)公司MongoDB估值達16億美元
特點
它的特點是高性能鳖粟、易部署社裆、易使用,存儲數(shù)據(jù)非常方便向图。主要功能特性有:
*面向集合存儲泳秀,易存儲對象類型的數(shù)據(jù)。
mongodb集群參考
mongodb集群參考
*模式自由榄攀。
*支持動態(tài)查詢嗜傅。
*支持完全索引,包含內(nèi)部對象檩赢。
*支持查詢吕嘀。
*支持復(fù)制和故障恢復(fù)。
*使用高效的二進制數(shù)據(jù)存儲贞瞒,包括大型對象(如視頻等)偶房。
*自動處理碎片,以支持云計算層次的擴展性军浆。
*支持RUBY棕洋,PYTHON,JAVA乒融,C++掰盘,PHP,C#等多種語言赞季。
*文件存儲格式為BSON(一種JSON的擴展)愧捕。
*可通過網(wǎng)絡(luò)訪問。
官網(wǎng):https://www.mongodb.org/
三碟摆、Tachyon
貢獻者:Haoyuan Li(李浩源)
簡介:Tachyon是一個分布式內(nèi)存文件系統(tǒng)垛吗,可以在集群里以訪問內(nèi)存的速度來訪問存在tachyon里的文件观蜗。把Tachyon是架構(gòu)在最底層的分布式文件存儲和上層的各種計算框架之間的一種中間件。主要職責(zé)是將那些不需要落地到DFS里的文件,落地到分布式內(nèi)存文件系統(tǒng)中蔚叨,來達到共享內(nèi)存碌宴,從而提高效率个曙。同時可以減少內(nèi)存冗余察郁,GC時間等。
Tachyon架構(gòu)
Tachyon的架構(gòu)是傳統(tǒng)的Master—slave架構(gòu)轩缤,這里和Hadoop類似命迈,TachyonMaster里WorkflowManager是 Master進程贩绕,因為是為了防止單點問題,通過Zookeeper做了HA壶愤,可以部署多臺Standby Master淑倾。Slave是由Worker Daemon和Ramdisk構(gòu)成。這里個人理解只有Worker Daemon是基于JVM的征椒,Ramdisk是一個off heap memory娇哆。Master和Worker直接的通訊協(xié)議是Thrift。
下圖來自Tachyon的作者Haoyuan Li:
下載地址:https://github.com/amplab/tachyon
四勃救、KFS
簡介:GFS的C++開源版本碍讨,Kosmos distributed file system (KFS)是一個專門為數(shù)據(jù)密集型應(yīng)用(搜索引擎,數(shù)據(jù)挖掘等)而設(shè)計的存儲系統(tǒng)蒙秒,類似于Google的GFS和Hadoop的HDFS分布式文件系統(tǒng)勃黍。 KFS使用C++實現(xiàn),支持的客戶端包括C++晕讲,Java和Python覆获。KFS系統(tǒng)由三部分組成,分別是metaserver益兄、chunkserver和client library锻梳。
官網(wǎng):http://code.google.com/p/kosmosfs/
五箭券、HDFS
簡介:Hadoop分布式文件系統(tǒng)(HDFS)被設(shè)計成適合運行在通用硬件(commodity hardware)上的分布式文件系統(tǒng)净捅。它和現(xiàn)有的分布式文件系統(tǒng)有很多共同點。但同時辩块,它和其他的分布式文件系統(tǒng)的區(qū)別也是很明顯的蛔六。HDFS是一個高度容錯性的系統(tǒng),適合部署在廉價的機器上废亭。HDFS能提供高吞吐量的數(shù)據(jù)訪問国章,非常適合大規(guī)模數(shù)據(jù)集上的應(yīng)用。HDFS放寬了一部分POSIX約束豆村,來實現(xiàn)流式讀取文件系統(tǒng)數(shù)據(jù)的目的液兽。HDFS在最開始是作為Apache Nutch搜索引擎項目的基礎(chǔ)架構(gòu)而開發(fā)的。HDFS是Apache Hadoop Core項目的一部分掌动。
官網(wǎng):http://hadoop.apache.org/
資源管理
一四啰、TwitterMesos
開發(fā)者:Twitter研發(fā)人員John Oskasson
簡介:Apache Mesos是由加州大學(xué)伯克利分校的AMPLab首先開發(fā)的一款開源群集管理軟件,支持Hadoop粗恢、ElasticSearch柑晒、Spark、Storm 和Kafka等架構(gòu)眷射,由于其開源性質(zhì)越來越受到一些大型云計算公司的青睞匙赞,例如Twitter佛掖、Facebook等。
參考文章:Mesos漸入主流,Twitter模式有望“無限復(fù)制”-CSDN.NET
官網(wǎng):http://mesos.apache.org/
二涌庭、Hadoop Yarn
Hadoop 新 MapReduce 框架 Yarn芥被。為從根本上解決舊 MapReduce 框架的性能瓶頸,促進 Hadoop 框架的更長遠發(fā)展坐榆,從 0.23.0 版本開始撕彤,Hadoop 的 MapReduce 框架完全重構(gòu),發(fā)生了根本的變化猛拴。新的 Hadoop MapReduce 框架命名為 MapReduceV2 或者叫 Yarn羹铅,其架構(gòu)圖如下圖所示:
Yarn 框架相對于老的 MapReduce 框架什么優(yōu)勢呢?我們可以看到:
1愉昆、這個設(shè)計大大減小了 JobTracker(也就是現(xiàn)在的 ResourceManager)的資源消耗职员,并且讓監(jiān)測每一個 Job 子任務(wù) (tasks) 狀態(tài)的程序分布式化了,更安全跛溉、更優(yōu)美焊切。
2、在新的 Yarn 中芳室,ApplicationMaster 是一個可變更的部分专肪,用戶可以對不同的編程模型寫自己的 AppMst,讓更多類型的編程模型能夠跑在 Hadoop 集群中堪侯,可以參考 hadoop Yarn 官方配置模板中的 mapred-site.xml 配置嚎尤。
3、對于資源的表示以內(nèi)存為單位 ( 在目前版本的 Yarn 中伍宦,沒有考慮 cpu 的占用 )芽死,比之前以剩余 slot 數(shù)目更合理。
4次洼、老的框架中关贵,JobTracker 一個很大的負擔(dān)就是監(jiān)控 job 下的 tasks 的運行狀況,現(xiàn)在卖毁,這個部分就扔給 ApplicationMaster 做了揖曾,而 ResourceManager 中有一個模塊叫做 ApplicationsMasters( 注意不是 ApplicationMaster),它是監(jiān)測 ApplicationMaster 的行狀況亥啦,如果出問題炭剪,會將其在其他機器上重啟。
5禁悠、Container 是 Yarn 為了將來作資源隔離而提出的一個框架念祭。這一點應(yīng)該借鑒了 Mesos 的工作,目前是一個框架碍侦,僅僅提供 java 虛擬機內(nèi)存的隔離 ,hadoop 團隊的設(shè)計思路應(yīng)該后續(xù)能支持更多的資源調(diào)度和控制 , 既然資源表示成內(nèi)存量粱坤,那就沒有了之前的 map slot/reduce slot 分開造成集群資源閑置的尷尬情況隶糕。
官網(wǎng):http://hadoop.apache.org/