Spark 安裝配置簡單測試
阿新 • • 發佈:2019-01-07
簡介
Spark是UC Berkeley AMP lab (加州大學伯克利分校的AMP實驗室)所開源的類Hadoop MapReduce的通用並行框架,Spark,擁有Hadoop MapReduce所具有的優點;但不同於MapReduce的是Job中間輸出結果可以儲存在記憶體中,從而不再需要讀寫HDFS,因此Spark能更好地適用於資料探勘與機器學習等需要迭代的MapReduce的演算法。
Spark 是一種與 Hadoop 相似的開源叢集計算環境,但是兩者之間還存在一些不同之處,這些有用的不同之處使 Spark 在某些工作負載方面表現得更加優越,換句話說,Spark 啟用了記憶體分佈資料集,除了能夠提供互動式查詢外,它還可以優化迭代工作負載。
Spark 是在 Scala 語言中實現的,它將 Scala 用作其應用程式框架。與 Hadoop 不同,Spark 和 Scala 能夠緊密整合,其中的 Scala 可以像操作本地集合物件一樣輕鬆地操作分散式資料集。
儘管建立 Spark 是為了支援分散式資料集上的迭代作業,但是實際上它是對 Hadoop 的補充,可以在 Hadoop 檔案系統中並行執行。通過名為 Mesos 的第三方叢集框架可以支援此行為。Spark 由加州大學伯克利分校 AMP 實驗室 (Algorithms, Machines, and People Lab) 開發,可用來構建大型的、低延遲的資料分析應用程式。
來源:百度百科
Hadoop 和 Spark 的異同
Hadoop安裝
系統環境
Centos 7 伺服器
當前使用者 hadoop
Scala下載安裝和配置
wget http://downloads.lightbend.com/scala/2.12.0/scala-2.12.0.tgz
tar zxvf scala-2.12.0.tgz
mv scala-2.12.0 ~/scala
Scala環境變數設定
vim ~/.bashrc
增加
export SCALA_HOME=/home/hadoop/scala/bin
export PATH=$PATH:$SCALA_HOME
Spark下載
wget http://archive.apache.org/dist/spark/spark-2.0.2/spark-2.0.2-bin-without-hadoop.tgz
tar zxvf spark-2.0.2-bin-without-hadoop.tgz
Spark安裝
mv spark-2.0.2-bin-without-hadoop ~/spark
Spark配置環境變數
vim ~/.bashrc
加入
export SPARK_HOME=/home/hadoop/spark/bin
export PATH=$PATH:$SPARK_HOME
應用環境變數
. ~/.bashrc
配置
cp -rf /home/hadoop/spark/conf/log4j.properties.template /home/hadoop/spark/conf/log4j.properties
cp -rf /home/hadoop/spark/conf/spark-env.sh.template /home/hadoop/spark/conf/spark-env.sh
修改日誌級別
vim /home/hadoop/spark/conf/log4j.properties
修改為
log4j.rootCategory=WARN, console
編輯 spark-env.sh檔案
vim /home/hadoop/spark/conf/spark-env.sh
最後一行加入:
export SPARK_DIST_CLASSPATH=$(/home/hadoop/hadoop/bin/hadoop classpath)
說明:hadoop 的執行檔案
測試
即計算 π 的近似值
/home/hadoop/spark/bin/run-example SparkPi 2>&1 | grep "Pi is roughly"