1. Spark的安裝及介紹
阿新 • • 發佈:2020-09-21
*以下內容由《Spark快速大資料分析》整理所得。
讀書筆記的第一部分是記錄如何安裝Spark?同時,簡單介紹下Spark。
一、Spark安裝
二、Spark介紹
一、Spark安裝
如果是在個人電腦上學習Spark,建議先建個虛擬機器,教程可參考1. 安裝虛擬機器,Hadoop和Hive。
在下載Spark之前得確認之前安裝的Hadoop版本是什麼?
# 檢視hadoop版本(這裡我是2.7.7)
hadoop version
然後,去官網下載相容現有hadoop版本的spark並解壓安裝包:
cd~ tar -xf spark-3.0.0-bin-hadoop2.7.tgz cd spark-3.0.0-bin-hadoop2.7 ls
現在,安裝好了就可以試執行下Python或Scala版本的Spark shell了:
# 開啟Python版本的Spark shell cd spark-3.0.0-bin-hadoop2.7 bin/pyspark # 開啟Scala版本的Spark setshell bin/spark-shell
二、Spark介紹
“Spark是一個用來實現快速而通用的叢集計算的平臺。”,它一個主要特點是能夠在記憶體中進行計算,因而更快。
1. Spark的核心元件有兩個:驅動器程式(driver program)和執行器(executor)。
- 驅動器程式:shell啟動時已自動建立一個SparkContext物件(也稱sc變數)去訪問Spark。有了SparkContext,就可以用它建立RDD(彈性分散式資料集resilient distributed dataset,不能看作是存放著特定資料的資料集,而是看作如何計算資料的指令列表)。
- 執行器:驅動器程式一般要管理多個執行器節點,不同節點會執行不同的工作,在叢集上實現並行資料分析。
例如Python的行數統計 $bin/pyspark >>>lines = sc.textFile("README.md") # 使用sc建立一個名為lines的RDD >>>lines.count() # 執行器統計RDD中元素的個數 108
2. 執行Python指令碼:使用Spark自帶的bin/spark-submit指令碼幫我們引入Python程式的Spark依賴(相當於為Spark的PythonAPI配置好的執行環境)
bin/spark-submit my_python_script.py
3. 在python中初始化Spark:
from pyspark import SparkConf, SparkContext
# 建立一個SparkConf物件來配置你的應用 conf = SparkConf().setMaster("local").setAppName("My App")
# 基於這個SparkConf建立一個SparkContext物件 sc = SparkContext(conf = conf)