快扔掉MapReduce,擁抱Spark吧!
譯文Apache軟件基金會正式宣布Spark的首個生產發(fā)行版本已經準備就緒,這款分析軟件能夠大大加快作業(yè)在Hadoop數據處理平臺上的運行速度。
作為擁有“Hadoop瑞士軍刀”美譽的軟件項目,Apache Spark能夠幫助用戶創(chuàng)建出性能卓越的數據分析作業(yè),其運行速度相較原本運行在標準Apache Hadoop MapReduce上的水平能夠高出上百倍。
取代Mapreduce
目前業(yè)界對于MapReduce持廣泛批評態(tài)度,認為它在執(zhí)行作業(yè)時采取的批處理方式屬于Hadoop集群中的性能瓶頸所在——這同時意味著實時數據分析機制根本無法實現。
Spark的出現為MapReduce提供了一套理想的替代方案,它以五秒或者更短時間為周期、通過微批量爆發(fā)方式執(zhí)行處理作業(yè)。它還提供比Twitter Storm等實時、面向流的Hadoop框架更為出色的穩(wěn)定性表現。
Cloudera宣布拋棄MapReduce,擁抱Spark
2014年4月25日,Cloudera正式宣布拋棄MapReduce,投入Spark的懷抱。
51CTO為此專訪了前Intel研究院,現Databricks研究員連城。連城老師表示,理論已經證明MapReduce模型可以模擬一切分布式計算(但未必可以高效模擬)。Spark基于RDD的計算圖可以輕松、完整地表達MapReduce模型,而且由于對分布式數據共享做了更高效的抽象,其效率比MapReduce只高不低。更多內容請閱讀專訪原文>>
Spark可以被用于處理多種作業(yè)類型,其中包括實時數據分析、配合軟件庫實現更深層次的計算作業(yè)——例如機器學習與圖形處理。
利用Spark,開發(fā)人員可以通過Java、Scala或者Python等語言進行數據分析作業(yè)編寫,并使用超過80種高級運算符。
Spark 1.0帶來的變革
在1.0版本當中,Apache Spark目前能夠提供穩(wěn)定的API(即應用程序編程接口),開發(fā)人員可以利用它將自己的應用程序與Spark相對接。
Spark 1.0版本中的另一項新特性是提供用于訪問結構化數據的Spark SQL組件,它允許用戶在分析工作中同時對結構化與非結構化數據進行查詢。
Apache Spark與Hadoop的分布式文件系統(簡稱HDFS)全面兼容,同時還能夠與其它Hadoop組件——包括YARN(全稱為Yet Another Resource Negotiator)以及HBase分布式數據庫——并行協作。
什么是Spark
Spark最初是由加利福尼亞大學伯克利分院的AMP(即算法、機器與人)實驗室開發(fā)而成的,Apache則于2013年6月將其納入了孵化器培養(yǎng)項目。目前包括Cloudera、Pivotal、IBM、英特爾以及MapR在內的多家IT廠商都已經將Spark引入自己的Hadoop堆棧。作為一家由部分Spark開發(fā)人員建立起來的公司,Databricks專門負責為該軟件提供商業(yè)支持服務。
除了前面提到的企業(yè),雅虎與美國宇航局還利用該軟件執(zhí)行日常數據操作任務。
與其它所有Apache軟件一樣,Apache Spark同樣基于Apache License 2.0版本。
原文鏈接:
http://www.itworld.com/420977/apache-lights-fire-under-hadoop-spark
【延伸閱讀】
2014年WOT全球軟件技術峰會上,將會專門安排Spark實時計算專場。來自INTEL、阿里的Spark技術專家將為大家?guī)矸窒?。有興趣的同學,可以掃描51CTO官方微信參與搶票活動。