隨著全球企業和個人資料的爆炸式增長,資料本身正在取代軟體和硬體成為驅動資訊技術行業和全球經濟的下一個大「油田」。
與PC、web等斷層式資訊技術革命相比,大資料的最大的不同是,這是一場由「開源軟體」驅動的革命。 從IBM、Oracle等巨頭到雨後春筍般的大資料創業公司,開源軟體與大資料的結合迸發出驚人的產業顛覆性力量,甚至VMware這樣的過去完全依賴專有軟體的廠商都開始擁抱開源大資料工具。
下面,我們就列舉九大最熱門的大資料開源技術供大家參考。
一、Hadoop
Apache Hadoop 是一個能夠對大量資料進行分散式處理的開源軟體框架。 由 Apache Software Foundation 公司于 2005 年秋天作為 Lucene的子專案 Nutch的一部分正式引入,Hadoop的開發者Doug Cutting最初開發Hadoop是為了滿足開源web搜尋引擎Nutch的集群處理需求,Cutting實現了MapReduce功能和分散式檔案系統(HDFS),並整合成為Hadoop。 Hadoop的命名靈感來自Cutting兒子的玩具大象。 通過MapReduce,Hadoop將大資料分解成小塊分配給各個通用伺服器節點進行分佈處理。 Hadoop是目前最流行的大資料(包括非結構化、半結構化和結構化資料)存儲和處理技術。 Hadoop的開源授權方式是Apache License2.0。
二、R
R是開源程式設計語言和軟體環境,被設計用來進行資料採礦/分析和視覺化。 R是S語言的一種實現。 而S語言是由 AT&T貝爾實驗室開發的一種用來進行資料探索、統計分析、作圖的解釋型語言。 最初S語言的實現版本主要是S-PLUS。 但S-PLUS是一個商務軟體,相比之下開源的R語言更受歡迎,被人們譽為「統計界的Red Hat」。
在KDNuggets2012年做的「過去與十二個月你在實際專案中使用的資料採礦/分析工具」的調查中,R以30.7%的得票率榮登榜首,超過微軟Excel(29.8%)和Rapidminer(2010和2011年排名第一)。 值得注意的是,今年排名前五名的資料採礦工具中有四個是開源軟體。 此外R還在擊敗SQL和JAVA,在最受歡迎的資料採礦應用程式設計語言排行榜中排名第一。
三、Cascading
作為Hadoop的開源軟體抽象層,Cascading允許使用者使用任何基於JVM的語言在Hadoop集群上創建並執行資料處理工作流。 Cascading能隱藏MapReduce任務底層的複雜性。 Chris Wensel設計Cascading的目的是成為MapReduce的一個備用API。 Cascading經常被用於廣告定向統計、日誌檔分析、生物資訊學分析、機器學習、預測分析、web內容文本挖掘以及ETL應用。 Cascading的商業支援由Concurrent公司提供,該公司由Cascading的設計者Wensel創建。 使用Cascading的知名網站包括Twitter和Etsy。 Cascading在GNU下開源。
四、Scribe
Scribe是Facebook開發的一種伺服器軟體,2008年發佈。 Scribe能即時聚合來自大量伺服器的日誌檔。 Facebook設計Scribe的目的是應對自身的擴充性挑戰,目前Facebook使用Scribe來處理每天數以百億計的消息。 Scribe在Apache License2.0下開源。
五、ElasticSearch
ElasticSearch基於ApacheLucene,開發者是Shay Banon。 ElasticSearch是一個分散式的RESTful開源搜尋伺服器,同時也是一個可擴展的解決方案,無需特別配置就可支援支援接近即時的搜索和多租戶。 很多公司都採用了ElasticSearch,包括StumbleUpon和火狐Mozilla。 ElasticSearch在Apache License2.0授權方式下開源。
六、Apache HBase
HBase是運行于HDFS之上的,可擴展的,面向列的,分散式非關聯式資料庫。 HBase由JAVA語言寫成,支援大表(Big Table)的結構化資料存儲。 HBase的優點是能進行容錯存儲,並能快速訪問海量Sparse資料。 HBase是過去幾年中湧現的NoSQL資料庫的代表之一。 2010年Facebook採用HBase搭建消息平臺,HBase在Apache License2.0下開源。
七、Apache Cassandra
Apache Cassandra是Facebook開發的開源的分散式資料庫管理系統,用來實現使用者收件匣內搜索功能,Cassandra同時也是一個NoSQL資料庫。 2010年,Facebook放棄了Cassandra轉而採用HBase。 但是Cassandra依然被一些公司採用,例如Netflix使用Cassandra作為視頻服務的後臺資料庫。 Cassandra在Apache License2.0下開源。
八、MongoDB
MongoDB由DoubleClick創始人開發,是一個流行的開源NoSQL資料庫。 MongoDB通過動態模式BSON在類JSON文檔中存儲結構化資料。 MongoDB被很多大企業採用,包括MTV Networks、Craigslist、迪士尼互動媒體集團、紐約時報和Etsy。 MongoDB在GNU下開源,由10gen公司供應商業版授權。
九、Apache CouchDB
Apache CouchDB也是一個開源NoSQL資料庫。 使用JSON存儲資料,用JavaScript作為查詢語言,API使用MapReduce和HTTP。 CouchDB由前IBM Lotus Notes開發者Damien Katz開發,作為大規模物件資料庫的存儲系統。 注明媒體集團BBC就使用CouchDB作為動態內容平臺,CouchDB在Apache License2.0下開源。
猜您喜歡:
1.用好大資料處理技術
2.大資料處理技術——python
3.大資料處理技術的趨勢-五種開源技術介紹