Spark簡介

Spark簡介

    Spark是Apache的一個開源項目,是一個適用於大數據處理的快速、通用的引擎,號稱Lightning-fast cluster computing(快如閃電的集羣計算)。
    Spark也有強大的社區支持,誰讓它是Apache的頂級項目呢?


速度

    Spark進行MapReduce作業的內存計算時比Hadoop快100倍,即使在磁盤上進行計算也比Hadoop快10倍左右。
    因爲Spark擁有一個支持非循環數據和內存計算的高級有向無環圖DAG(Directed Acyclic Graph)執行引擎。

Logistic regression in Hadoop and Spark
Logistic regression in Hadoop and Spark

易用性

    Spark可以使用Java, Scala, Python, R等語言進行應用的快速開發。
    Spark提供超過80種高級算子使得構建並行應用十分簡單,你也可以在Scala、Python、R的交互式shell種使用Spark。
    我們可以在Scala Shell中使用一句代碼完成WordCount:
sc.textFile(fileName).flatMap(_.split(" ")).map((_,1)).reduceByKey(_ + _).collect

通用性

    Spark融合了SQL、流計算和複雜的分析。
    Spark提供了超級強大的一些內庫,包括SQL、數據框、機器學習庫、圖計算和Spark流計算,我們可以在同一個應用中無縫的融合這些庫。

到處運行

    Spark可以運行在Hadoop、Mesos、單機或者雲服務器上,它可以從HDFS、Cassandra、HBase和S3中獲取各種各樣的數據源。
    我們可以在EC2、Hadoop Yarn、Apache Mesos上使用Spark的獨立集羣模式運行Spark,從HDFS、Cassandra、 HBase、Hive、 Tachyon和其他任何Hadoop支持的數據源中獲取數據。

參考

Apache Spark官網

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章