天天看點

Spark主要特點

1.Spark的主要特點

1.1 速度快

Spark 使用DAG 排程器、查詢優化器和實體執行引擎,能夠在批處理和流資料獲得很高的性能。根據官方的統計,它的運算速度是hadoop的100x倍,應該是有一定的條件吧!

Spark主要特點

1.2 使用簡單

Spark的易用性主要展現在兩個方面。一方面,我們可以用較多的程式設計語言來寫我們的應用程式,比如說Java,Scala,Python,R 和 SQL;另一方面,Spark 為我們提供了超過80個高階操作,這使得我們十分容易地建立并行應用,除此之外,我們也可以使用Scala,Python,R和SQL shells,以實作對Spark的互動。

df = spark.read.json("logs.json") df.where("age > 21")   .select("name.first").show()
**Spark's Python DataFrame API
Read JSON files with automatic schema inference**
           

1.3 通用性強

與其說通用性高,還不如說它內建度高,如圖所示:以Spark為基礎建立起來的子產品(庫)有Spark SQL,Spark Streaming,MLlib(machine learning)和GraphX(graph)。我們可以很容易地在同一個應用中将這些庫結合起來使用,以滿足我們的實際需求。

Spark主要特點

1.4 到處運作

Spark應用程度可以運作十分多的架構之上。它可以運作在Hadoop,Mesos,Kubernetes,standalone,或者雲伺服器上。它有多種多種通路源資料的方式。可以用standalone cluster模式來運作Spark應用程式,并且其應用程式跑在Hadoop,EC2,YARN,Mesos,或者Kubernates。對于通路的資料源,我們可以通過使用Spark通路HDFS,Alluxio,Apache Cassandra,HBase,Hive等多種資料源。

Spark主要特點

2.Spark主要包含的子產品

2.1 Spark Core

2.2 Spark SQL

2.3 Spark Streaming

2.4 Spark ML

繼續閱讀