MapReduce的出現是為了突破資料庫的局限。 Giraph、Hama以及Impala等工具的出現則是為了突破MapReduce的局限。 雖然上述方案的運行都需要以Hadoop為基礎,但圖形、文檔、列式以及其它NoSQL資料庫也是大資料當中不可或缺的組成部分。
哪款大資料工具能夠滿足您的需求?這個問題在如今解決方案數量迅速增長的背景之下,確實不容易回答。
Apache Hadoop
當人們說起「大資料」或者「資料科學」時,他們指的往往是Hadoop專案。 總體而言,Hadoop借用了MapReduce的框架,但該專案同時包含大量與資料存儲及處理密切相關的重要工具。 與MapReduce 2.0相似,全新YARN框架的出現標誌著Hadoop邁出了發展道路上的關鍵步伐。 大家可以期待著這一輪大資料浪潮很快出現在各位的業務環境當中。
目前還沒有任何一家重量級新興企業依靠Apache專案的支援,但Hadoop在這方面的人氣則更高一些。 分析人士預計,Hadoop將最終構建起年市值高達數百億美元的巨大市場。 大家千萬別因為預算緊張而錯過了這一波發展良機。
-- Andrew C. Oliver
官方網站:HTTP://hadoop.apache.org/
Apache Sqoop
說起大資料處理,大家最先想到的肯定是Hadoop;但這並不代表傳統資料庫就無法勝任這項工作。 事實上,多數情況下我們仍然需要從傳統資料庫中提取分析所需的資料,而這正是Apache Sqoop的長項。
Sqoop能夠有效提高傳統資料庫系統與Hadoop之間的資料轉換效率,這是因為它採用了併發連接、可定制資料類型映射以及中繼資料傳播等一系列技術。 大家可以將資料(例如純新資料)導入至HDFS、Hive以及HBase當中,也能夠將分析結果返回到傳統資料庫端。 Sqoop還可以管理資料連線器帶來的記憶體複雜性以及存在匹配失誤的資料格式。
-- James R. Borck
官方網站:HTTP://sqoop.apache.org/
Talend Open Studio for Big Data
Talend Open Studio for Big Data允許大家直接向Hadoop中載入檔(通過HDFS、Hive以及Sqoop等),而且無需進行手動編碼。 其圖形化IDE所生成的原生Hadoop代碼(支援YARN/MapReduce 2)能夠利用Hadoop分散式環境實現大規模資料轉換。
Talend的虛擬映射工具允許使用者創建資料流程並在無需涉及Pig的前提下加以測試。 此外,專案進度安排與工作優化工具也進一步增強的工具組的功能陣容。
著手對大量資料進行整理分析的第一步,是將資料從多種來源處彙聚到Hadoop當中,而後再由Hadoop轉移至其它平臺。 Talend Open Studio説明大家在處理遷移流程時隨心所欲,完全不必為擔任複雜性而擔憂。
-- James R. Borck
官方網站:HTTP://www.talend.com/products/big-data
Apache Giraph
Apache Giraph是一套圖形處理系統,專為高擴充性及高可用性需求所打造。 作為谷歌Pregel的開源替代方案,Giraph已經被Facebook公司用於分析使用者社交圖譜及其彼此關聯。 這套系統採用了來自Pregel的高效整體同步並行處理模式,從而避免了MapReduce在處理圖形內容時存在的固有問題。 好消息是:Giraph計算進程可在大家的現有Hadoop基礎設施中作為Hadoop任務運行。 只要同時運行其它一些同類工具,大家就相當於獲得了分散式圖形處理能力。
-- Indika Kotakadeniya
官方網站:HTTP://giraph.apache.org/
Apache Hama
與Giraph類似,Apache Hama同樣將整體同步並行處理機制引入Hadoop生態系統當中,而且以Hadoop分散式檔案系統作為運行基礎。 不過與專注于圖形處理任務的Giraph不同,Hama是一套更具通行特性的框架,旨在執行大量模型與圖像計算任務。 它將Hadoop的良好相容性與更為靈活的程式設計模式結合起來,為數據密集型科學應用提供出色的運行基礎。
-- Indika Kotakadeniya
HTTP://hama.apache.org/
Cloudera Impala
Cloudera Impala在即時SQL查詢中的意義,可以等同于MapReduce在批量處理領域的重要作用。 Impala引擎位於Hadoop集群的每一個資料節點當中,從而靈活地偵聽查詢請求。 經過對查詢的分析之後,它會通過優化生成一套執行規劃,並在集群中的計算節點之間負責並行處理的協調工作。 通過上述努力,Impala為使用者在Haoop環境下帶來更低的SQL查詢延遲,並以接近即時的狀態對大資料加以理解。
由於Impala也能直接使用大家的原生Hadoop基礎設施(例如HDFS、HBase以及Hive中繼資料),多方配合將構成一整統一平臺,使用者可以在不涉及連接器複雜性、ETL或者昂貴資料倉儲等機制的前提下實現全面資料分析。 此外,Impala可以從任何ODBC/JDBC源處輕鬆獲取,所以能夠成為Pentaho等商務智慧工具組中的理想元件。
-- James R. Borck
官方網站:HTTP://www.cloudera.com/content/cloudera/en/home.html
Serengeti
作為VMware將虛擬化帶入大資料處理領域的重要專案,Serengeti允許大家將Hadoop集群以動態方式運行在共用式伺服器基礎設施當中。 該專案利用Apache Hadoop虛擬化擴展——由VMware開發並貢獻——從而使Hadoop成功步入虛擬化環境。
在Serengeti的説明下,我們可以在幾分鐘之內完成Hadoop集群環境部署,且不必涉及節點佈局、HA狀態或者作業調度等令人頭痛的配置選項。 進一步講,通過在每台主機內的多套虛擬機器系統中部署Hadoop,Serengeti能夠將資料及計算功能加以劃分,並在維護本地資料存儲的同時改進計算規模。
-- James R. Borck
官方網站:HTTP://projectserengeti.org/
Apache Drill
Apache Drill的設計靈感源自谷歌Dremel系統,旨在為大規模資料集帶來極低的交互分析延遲。 Drill支援多種資料來源,包括HBase、Cassandra、MongoDB以及傳統關係資料庫。 Hadoop雖然能為我們帶來可觀的資料吞吐能力,但分析其中的內容則要花費數分鐘甚至數小時時間。 在Drill的説明下,大家將擁有理想的回應速度,從而實現互動式操作;這樣一來,快速分析並獲取有價值結論將變得輕鬆而愉快。
-- Steven Nu?ez
官方網站:HTTP://incubator.apache.org/drill/
Gephi
圖形理論已經全面延伸到應用程式的各個領域。 我們可以利用鏈式分析調查相關貿易商與員工,從而揪出可疑的交易活動。 一旦明晰系統內關鍵性連接點的狀況,我們就能以直觀方式審視複雜的IT環境。 在多位專家、企業聯合組織的開發活動中,Gephi作為一款可視性發現工具,能夠支援多種圖形類型以及高達百萬級別的網路節點規模。 大家可以從維琪、論壇以及各類教學網站上找到豐富的指導性資料,活躍的技術社區也為我們帶來層出不窮的外掛程式選項——總而言之,大家在使用Gephi的過程中很可能無需從零做起。
-- Steven Nu?ez
Neo4j
作為一款具備敏捷性且速度極為出眾的圖形資料庫,Neo4j能夠以多種方式為使用者提供説明,包括社交應用、推薦引擎、欺詐活動檢測、資源驗證以及資料中心網路管理等等。 Neo4j目前在性能提升(查詢結果流處理速度)及集群化/HA支援表現方面仍然處於穩步發展當中。
-- Michael Scarlett
官方網站:HTTP://www.neo4j.org/
MongoDB
在眾多NoSQL資料庫當中,最具人氣的也許要數MongDB。 它採用二元形式JSON文檔實現資料存儲,從而支援多種多樣的文檔形式、説明開發人員獲得遠超過傳統關係資料庫的自由發揮空間——後者強制要求我們在眾多清單之間使用嚴格的平面開發模式。 除此之外,MongoDB還提供開發人員需要從關係資料庫中獲得的全部功能。
2013年對於MongoDB發展史來說相當重要,今年我們迎來了兩款新版本外加一系列新功能,其中包括文本搜索以及地理空間支援。 新版本在性能改進方面也表現出色,例如採用併發式索引機制以及速度更快的JavaScript引擎(V8)。
-- Michael Scarlett
官方網站:HTTP://www.mongodb.com/
Couchbase Server
與其它NoSQL資料庫類似且與大部分關係資料庫不同,Couchbase Server並不要求使用者在插入資料之前首先創建什麼架構。 Couchbase Server的特性之一在於其記憶體緩存庫。 這項功能允許開發人員以無縫化方式由記憶體緩存環境向其它體系過渡,資料複製效果與而用性都令人滿意,而且不會給應用程式造成停機。 其2.0版本還增加了文檔資料庫功能。 2.1版本在此基礎上納入跨資料中心複製與更為強大的存儲性能。
-- Michael Scarlett
官方網站:HTTP://www.couchbase.com/why-nosql/nosql-database
Paradigm4 SciDB
SciDB是一套分散式資料庫系統,利用並行處理對資料流程進行即時分析。 該系統的全部關注重點都放在大量科學資料集的支援效果上。 它回避了關係資料庫中常見的行、列模式,轉而使用更適合有序資料集——例如時間序列及位置資料——的原生數列結構。 與關係資料庫或者MaoReduce不同,SciDB提供一套統一解決方案,能夠在不涉及Hadoop多層基礎設施與資料資訊內容的前提下實現跨集群擴展。
-- James R. Borck
官方網站:HTTP://scidb.org/