Spark介紹與安裝使用 - twilighthook/BigDataNote GitHub Wiki

Spark是一個為了開發速度和泛用為目的的叢級運算平台。 本身可以提供比Hadoop快100倍速度運行,因為他本身是在快取記憶體中執行他的運算。 也提供一些資料工程或是資料科學的套件或是函式庫可以使用。

Spark對於資料工程

Spark提供他的kernel的許多功能,也有他最主要的RDD(Resilient Distributed Dataset,彈性分散式資料集),可以大幅的加快處理速度,這也是他最主要的處理系統。 本身也可以用來做大數據的ETL的實作,他本身也提供了map、filter、reduce...等的實作方式,也可以配合Hadoop的hdfs做數據處理。

Spark對於資料科學

對於資料科學而言Spark提供了一個MLlib,可以使用分類、迴歸、分群...等的機器學習元素,也能外部呼叫Matlab或R等的機器學習語言。


Spark安裝

(Spark本身可以透過Python、Java、Scala使用,安裝時也需要這些程式語言的開發環境,可以先在Linux上安裝這些套件來準備實作。) 此處下載所對應的Spark版本。 接下來在安裝位置

tar -zxvf {Spark_tar_name}

然後設置環境參數

sudo vim ~/.bashrc
export SPARK_PATH = {your_path}
export PATH = $SPARK_HOME/bin:$PATH

運行更改後的環境變數

source ~/.bashrc

之後可以運行看看是否配置成功

bin/spark-sheel

成功就會出現下圖的logo

Welcome to
      ____              __
     / __/__  ___ _____/ /__
    _\ \/ _ \/ _ `/ __/  '_/
   /___/ .__/\_,_/_/ /_/\_\   version 2.4.0
      /_/
         

安裝完成後就可以使用shell來實現程式實作

  • Python版本的shell : PySpark
bin/pyspark
  • Scala版本的shell
bin/spark-shell

在開發Spark程式時,大多會選用Scala來進行實作 可以到Scala官網下載他們的eclipse IDE 再下載需要的jar檔進行開發