版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
Spark大數(shù)據(jù)處理框架1 Spark概述2 Spark運(yùn)行機(jī)制3
在VirtualBox上安裝Linux集群4Hadoop安裝前的準(zhǔn)備工作5Hadoop的安裝與配置6Spark的安裝及配置7
使用PySpark編寫Python代碼8 安裝pip工具和一些常用的數(shù)據(jù)分析庫9安裝Anaconda和配置JupyterNotebook1Spark概述MapReduce框架存在以下局限性。僅支持Map和Reduce兩種操作。數(shù)據(jù)處理的每一步都需要一個Map階段和一個Reduce階段。處理效率低效。Map中間結(jié)果寫磁盤,Reduce中間結(jié)果寫HDFS,多個MapReduce之間通過HDFS交換數(shù)據(jù),任務(wù)調(diào)度和啟動開銷大。Map和Reduce均需要排序,但是有的任務(wù)處理完全不需要排序(比如求最大值求最小值等),所以就造成了性能的低效。不適合做迭代計算(如機(jī)器學(xué)習(xí)、圖計算等)、交互式處理(如數(shù)據(jù)挖掘)和流式處理(如日志分析)。Spark產(chǎn)生背景1Spark概述Spark處理數(shù)據(jù)時,所有的中間數(shù)據(jù)都保存在內(nèi)存中,從而減少磁盤讀寫操作,提高了框架計算效率。Spark的優(yōu)點。運(yùn)行速度快。Spark基于磁盤做迭代計算比基于磁盤做迭代計算的MapReduce快10余倍;Spark基于內(nèi)存的迭代計算則比基于磁盤做迭代計算的MapReduce快100倍以上。易用性好。Spark支持Java、Python、Scala等語言進(jìn)行編程,支持交互式的Pytbon和Scala的shell。通用性強(qiáng)。Spark提供了批處理、交互式查詢、實時流處理、機(jī)器學(xué)習(xí)和圖計算等組件,這些組件都可以在同一個應(yīng)用中無縫使用。兼容性好。Spark可以與其他的大數(shù)據(jù)處理產(chǎn)品進(jìn)行融合,如Spark可以使用Hadoop的YARN作為它的資源管理和調(diào)度器。Spark也有自己的資源管理和調(diào)度框架Standalone。Spark的優(yōu)點1Spark概述Spark的應(yīng)用場景主要有以下幾個。適用于需要多次操作特定數(shù)據(jù)集的應(yīng)用場合。Spark不適用那種異步細(xì)粒度更新狀態(tài)的應(yīng)用,例如Web服務(wù)的存儲或者是增量的Web爬蟲和索引。數(shù)據(jù)量不是特別大,但是要求實時統(tǒng)計分析需求。Spark應(yīng)用場景1Spark概述Spark是一個大數(shù)據(jù)并行計算框架,Spark有著自己的生態(tài)系統(tǒng),同時兼容HDFS、Hive等分布式存儲系統(tǒng),可以完美融入Hadoop的生態(tài)圈中,代替MapReduce去執(zhí)行更為高效的分布式計算。Spark生態(tài)系統(tǒng)
Spark大數(shù)據(jù)處理框架1 Spark概述2 Spark運(yùn)行機(jī)制3
在VirtualBox上安裝Linux集群4Hadoop安裝前的準(zhǔn)備工作5Hadoop的安裝與配置6Spark的安裝及配置7
使用PySpark編寫Python代碼8 安裝pip工具和一些常用的數(shù)據(jù)分析庫9安裝Anaconda和配置JupyterNotebook2Spark運(yùn)行機(jī)制彈性分布式數(shù)據(jù)集(簡稱RDD):只讀分區(qū)記錄的集合,Spark對所處理數(shù)據(jù)的基本抽象。Spark中的計算可以抽象為對RDD進(jìn)行創(chuàng)建、轉(zhuǎn)換和返回操作結(jié)果的過程。Spark基本概念通過加載外部物理存儲(如HDFS)中的數(shù)據(jù)集,或當(dāng)前運(yùn)行的應(yīng)用中定義的對象集合(如List)來創(chuàng)建RDD。RDD在創(chuàng)建后不可被改變,只可以對其執(zhí)行轉(zhuǎn)換操作和行動操作。分區(qū):一個RDD在物理上被切分為多個數(shù)據(jù)分區(qū),這些分區(qū)可以分布在集群中的不同節(jié)點上,從而讓RDD中的數(shù)據(jù)可以被并行操作。分區(qū)是Spark計算任務(wù)的基本處理單位,決定了并行計算的粒度。Spark應(yīng)用(Application):指的是用戶使用SparkAPI編寫的應(yīng)用程序。應(yīng)用的main()函數(shù)為應(yīng)用程序的入口。2Spark運(yùn)行機(jī)制驅(qū)動程序(Driver)和執(zhí)行器(Executor):Spark在執(zhí)行每個應(yīng)用的過程中會啟動驅(qū)動程序和執(zhí)行器兩種JVM進(jìn)程。驅(qū)動程序運(yùn)行用戶應(yīng)用中的main()函數(shù),創(chuàng)建SparkContext對象,準(zhǔn)備Spark應(yīng)用程序的運(yùn)行環(huán)境。Spark基本概念驅(qū)動程序也負(fù)責(zé)提交Job,并將Job轉(zhuǎn)化為Task,在各個執(zhí)行器進(jìn)程間協(xié)調(diào)Task的調(diào)度。在一個應(yīng)用中,每個行動操作都觸發(fā)生成一個作業(yè)(Job)。作業(yè):在一個用戶應(yīng)用中,每個行動操作都觸發(fā)生成一個作業(yè)。Spark對RDD采用惰性求解機(jī)制,對RDD的創(chuàng)建和轉(zhuǎn)換并不會立即執(zhí)行,只有在遇到行動操作時才會生成一個作業(yè),然后統(tǒng)一調(diào)度執(zhí)行。一個作業(yè)會被拆分為多組任務(wù),每組任務(wù)被稱為階段(Stage),或者被稱為任務(wù)集(TaskSet)。2Spark運(yùn)行機(jī)制洗牌(Shuffle):有一部分轉(zhuǎn)換操作或行動操作會讓RDD產(chǎn)生寬依賴,這樣RDD操作過程就像是將父RDD中所有分區(qū)的Record進(jìn)行了“洗牌”(Shuffle),數(shù)據(jù)被打散重組。Spark基本概念任務(wù)(Task):一個Job在每個Stage內(nèi)都會按照RDD的Partition數(shù)量,創(chuàng)建多個Task。任務(wù)(Task)是運(yùn)行在執(zhí)行器(Executor)上的工作單元,單個分區(qū)數(shù)據(jù)集上的最小處理流程單元。階段(Stage):用戶提交的應(yīng)用程序的計算過程表示為一個由RDD構(gòu)成的DAG,如果RDD在轉(zhuǎn)換的時候需要做Shuffle,那么這個Shuffle的過程就將這個DAG分為了不同的階段(Stage)。工作節(jié)點(WorkerNode):Spark的工作節(jié)點,用于執(zhí)行提交的作業(yè)資源管理器(ClusterManager):Spark以Spark自帶的Standalone、Hadoop的YARN等為資源管理器調(diào)度Job完成Spark應(yīng)用程序的計算。2Spark運(yùn)行機(jī)制Spark運(yùn)行架構(gòu),主要包括集群資源管理器(ClusterManager)、運(yùn)行作業(yè)任務(wù)的工作結(jié)點(WorkerNode)、驅(qū)動程序(DriverProgram)和每個工作結(jié)點上負(fù)責(zé)具體任務(wù)的執(zhí)行器(Executor)。Spark運(yùn)行架構(gòu)DriverProgram負(fù)責(zé)執(zhí)行Application中的main()函數(shù),準(zhǔn)備Application的運(yùn)行環(huán)境,創(chuàng)建SparkContext(應(yīng)用上下文)對象,進(jìn)而用他來創(chuàng)建RDD,提交Job,并將Job轉(zhuǎn)化為多組任務(wù),在各個Executor進(jìn)程間協(xié)調(diào)任務(wù)的調(diào)度執(zhí)行。此外,SparkContext對象還負(fù)責(zé)和ClusterManager進(jìn)行通信、資源申請、任務(wù)分配和運(yùn)行監(jiān)控等。2Spark運(yùn)行機(jī)制Spark運(yùn)行架構(gòu)ClusterManager負(fù)責(zé)申請和管理在WorkerNode上運(yùn)行應(yīng)用所需的資源。ClusterManager負(fù)責(zé)申請和管理在WorkerNode上運(yùn)行應(yīng)用所需的資源。Executor是應(yīng)用運(yùn)行在Worker節(jié)點上的一個進(jìn)程,負(fù)責(zé)運(yùn)行應(yīng)用的某些Task,并將結(jié)果返回給Driver,同時為需要緩存的RDD提供存儲功能。每個應(yīng)用都有各自獨(dú)立的一批Executor。2Spark運(yùn)行機(jī)制Spark運(yùn)行架構(gòu)與MapReduce計算框架相比,Spark采用Executor具有如下兩大優(yōu)勢。(1)Executor利用多線程來執(zhí)行任務(wù),相比MapReduce的進(jìn)程模型,使用的資源和啟動開銷要小很多。(2)Executor中有一個BlockManager存儲模塊,BlockManager會將內(nèi)存和磁盤共同作為存儲設(shè)備,當(dāng)需要多輪迭代計算的時候,可以將中間結(jié)果存儲到這個存儲模塊里,供下次需要時直接使用,而不需要從磁盤中讀取,從而有效減少I/O開銷。。Worker節(jié)點上的不同Executor服務(wù)于不同的應(yīng)用,它們之間是不共享數(shù)據(jù)的。
Spark大數(shù)據(jù)處理框架1 Spark概述2 Spark運(yùn)行機(jī)制3在VirtualBox上安裝Linux集群4Hadoop安裝前的準(zhǔn)備工作5Hadoop的安裝與配置6Spark的安裝及配置7
使用PySpark編寫Python代碼8 安裝pip工具和一些常用的數(shù)據(jù)分析庫9安裝Anaconda和配置JupyterNotebook3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝VirtualBox軟件的版本為VirtualBox-6.1.26,在VirtualBox里可以創(chuàng)建多個虛擬機(jī)(這些虛擬機(jī)的操作系統(tǒng)可以是Windows也可以是Linux)。本節(jié)介紹如何在VirtualBox上安裝Linux操作系統(tǒng):為VirtualBox設(shè)置存儲文件夾:創(chuàng)建虛擬電腦時,VirtualBox會創(chuàng)建一個文件夾,用于存儲這個虛擬電腦的所有數(shù)據(jù)。VirtualBox啟動后的界面:3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝為VirtualBox設(shè)置存儲文件夾:創(chuàng)建虛擬電腦時,VirtualBox會創(chuàng)建一個文件夾,用于存儲這個虛擬電腦的所有數(shù)據(jù)。單擊左上角管理→全局設(shè)定→常規(guī),修改默認(rèn)虛擬電腦位置為自己想要存儲虛擬電腦的位置,這里設(shè)置為E盤VirtualBox文件夾,單擊OK確認(rèn)。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在VirtualBox中創(chuàng)建虛擬機(jī):啟動VirtualBox軟件,在界面右上方點擊“新建”按鈕,打開新建虛擬電腦界面,在“名稱”后面的文本框中輸入虛擬機(jī)名稱,名稱填寫Master;在“類型”后面的下拉列表中選擇Linux;在“版本”后面的下拉列表中選擇要安裝的Linux系統(tǒng)類型及位數(shù),本書選擇安裝的是64位Ubuntu系統(tǒng)。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在VirtualBox中創(chuàng)建虛擬機(jī):單擊“下一步”按鈕,設(shè)置虛擬機(jī)內(nèi)存大小。根據(jù)個人計算機(jī)配置給虛擬機(jī)設(shè)置內(nèi)存大小,一般情況下沒有特殊要求默認(rèn)即可。這里將虛擬機(jī)內(nèi)存設(shè)置為2GB。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在VirtualBox中創(chuàng)建虛擬機(jī):單擊“下一步”按鈕,設(shè)置磁盤,選擇“現(xiàn)在創(chuàng)建虛擬硬盤”選項。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在VirtualBox中創(chuàng)建虛擬機(jī):單擊“創(chuàng)建”按鈕,選擇虛擬硬盤文件類型,這里選擇VDI(VirtualBox磁盤映象)。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在VirtualBox中創(chuàng)建虛擬機(jī):單擊“下一步”按鈕,設(shè)置虛擬硬盤文件的存放方式,如果磁盤空間較大,就選擇固定大小,這樣可以獲得較好的性能;如果硬盤空間比較緊張,就選擇動態(tài)分配。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在VirtualBox中創(chuàng)建虛擬機(jī):單擊“下一步”按鈕,設(shè)置虛擬硬盤文件的存放位置和大小,默認(rèn)會保存在之前配置過的VirtualBox目錄下,虛擬硬盤的大小設(shè)置為20GB。點擊“瀏覽”選擇一個容量充足的硬盤來存放它,單擊“創(chuàng)建”按鈕完成虛擬電腦的創(chuàng)建。然后,就可以在這個新建的虛擬機(jī)上安裝Linux系統(tǒng)。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):按照上面的步驟完成虛擬電腦的創(chuàng)建以后,會返回到此界面。這時請勿直接單擊“啟動”按鈕,否則,有可能會導(dǎo)致安裝失敗。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):選擇剛剛創(chuàng)建的虛擬機(jī),然后單擊右上方的設(shè)置按鈕打開“Master-設(shè)置”頁面。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):單擊左側(cè)存儲按鈕打開存儲設(shè)置頁面,然后單擊“沒有盤片”,單擊右側(cè)的小光盤圖標(biāo),單擊“選擇虛擬盤...”,選擇之前下載的Ubuntu系統(tǒng)安裝文件,本書選擇的Ubuntu系統(tǒng)安裝文件的版本是ubuntu-20.04.3-desktop-amd64.iso。單擊“OK”按鈕。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):選擇剛創(chuàng)建的虛擬機(jī)Master,單擊“啟動”按鈕。啟動后會看到Ubuntu安裝歡迎界面,安裝語言選擇中文(簡體)。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):單擊“安裝Ubuntu”按鈕,在鍵盤布局界面中,鍵盤布局選擇English(US)。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):單擊繼續(xù)按鈕,在彈出的更新和其他軟件界面中,設(shè)置如圖所示。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):單擊繼續(xù)按鈕,在彈出的安裝類型界面中確認(rèn)安裝類型,這里選擇“其他選項”3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):單擊“繼續(xù)”按鈕,在出現(xiàn)的界面中,單擊“新建分區(qū)表...”按鈕,在彈出的界面中單擊“繼續(xù)”按鈕,選中“空閑”。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):單擊+按鈕,彈出創(chuàng)建分區(qū)界面,設(shè)置交換空間的大小設(shè)512MB3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):單擊+按鈕,彈出創(chuàng)建分區(qū)界面,設(shè)置交換空間的大小設(shè)512MB單擊“OK”按鈕,在彈出的界面中選中“空閑”,然后單擊+按鈕,在彈出的界面中創(chuàng)建根目錄。3
在VirtualBox上安裝Linux集群Master節(jié)點的安裝在虛擬電腦上安裝Linux系統(tǒng):單擊“確定”按鈕,在出現(xiàn)的界面中單擊“現(xiàn)在安裝”按鈕,在彈出的界面中單擊“繼續(xù)”按鈕。在出現(xiàn)的“您在什么地方?”頁面,采用默認(rèn)值shanghai即可,單擊“繼續(xù)”,直到出現(xiàn)如圖“您是誰?”的設(shè)置界面設(shè)置用戶名和密碼,然后單擊繼續(xù),安裝過程正式開始,不要單擊Skip按鈕,等待自動安裝完成。3
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。打開VirtualBox,進(jìn)入VirtualBox界面選中要導(dǎo)出的虛擬機(jī)實例,這里選擇的是Slave13
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。然后單擊上方的管理按鈕,在下來菜單中單擊“導(dǎo)出虛擬電腦(E)...3
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。在彈出的界面中單擊下一步3
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。在上面單擊“下一步”后彈出的界面中,選擇導(dǎo)出保存路徑3
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。然后單擊“下一步”按鈕,在之后彈出的界面中單擊導(dǎo)出按鈕3
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。正在進(jìn)行導(dǎo)出操作,導(dǎo)出結(jié)束后得到Slave1.ova文件。3
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。點擊左上角管理→全局設(shè)定→常規(guī),修改默認(rèn)虛擬電腦位置以存儲導(dǎo)入的虛擬電腦,為E盤。單擊OK確認(rèn)。3
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。在VirtualBox中單擊管理菜單下的“導(dǎo)入虛擬電腦(I)...”。3
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。在彈出的界面中選擇前面得到Slave1.ova文件。3
在VirtualBox上安裝Linux集群虛擬機(jī)克隆安裝Slave1節(jié)點在VirtualBox系統(tǒng)中,可將已經(jīng)安裝配置好一個虛擬機(jī)實例像拷貝文件那樣復(fù)制得到相同的虛擬機(jī)系統(tǒng),稱為虛擬機(jī)克隆,具體實現(xiàn)步驟如下。然后單擊“下一步”在彈出的界面中勾選下面的“重新初始化所有網(wǎng)卡的MAC地址(R)”選項,最后單擊導(dǎo)入按鈕即可創(chuàng)建一個新的虛擬機(jī)實例。
Spark大數(shù)據(jù)處理框架1 Spark概述2 Spark運(yùn)行機(jī)制3在VirtualBox上安裝Linux集群4Hadoop安裝前的準(zhǔn)備工作5Hadoop的安裝與配置6Spark的安裝及配置7
使用PySpark編寫Python代碼8 安裝pip工具和一些常用的數(shù)據(jù)分析庫9安裝Anaconda和配置JupyterNotebook4
Hadoop安裝前的準(zhǔn)備工作如果你安裝Ubuntu的時候不是用的“hadoop”用戶,那么需要增加一個名為hadoop的用戶,這樣做是為了方便后續(xù)軟件的安裝。打開一個終端,輸入如下命令創(chuàng)建hadoop用戶:$sudouseradd-mhadoop-s/bin/bash-m表示自動創(chuàng)建用戶的家目錄,-s指定/bin/bash作為用戶登入后所使用的Shell。為hadoop用戶設(shè)置登錄密碼:$sudopasswdhadoop為hadoop用戶增加管理員權(quán)限:$sudoadduserhadoopsudo創(chuàng)建hadoop用戶4
Hadoop安裝前的準(zhǔn)備工作創(chuàng)建hadoop用戶使用suhadoop切換到用戶hadoop。打開虛擬機(jī)后,通過簡單的設(shè)置可實現(xiàn)在Ubuntu與Windows之間互相復(fù)制與粘貼,具體實現(xiàn)過程:設(shè)備→共享粘貼板→雙向。更新apt源$sudoapt-getupdate安裝SSH、配置SSH無密碼登錄SSH是目前較可靠,專為遠(yuǎn)程登錄會話和其他網(wǎng)絡(luò)服務(wù)提供安全性的協(xié)議。利用SSH協(xié)議可以有效防止遠(yuǎn)程管理過程中的信息泄露問題。SSH是由客戶端和服務(wù)端組成,客戶端包含ssh程序以及像scp(遠(yuǎn)程拷貝)、slogin(遠(yuǎn)程登陸)、sftp(安全文件傳輸)等其他的應(yīng)用程序。4
Hadoop安裝前的準(zhǔn)備工作安裝SSH、配置SSH無密碼登錄SSH的工作機(jī)制是本地的客戶端發(fā)送一個連接請求到遠(yuǎn)程的服務(wù)端,服務(wù)端檢查申請的包和IP地址再發(fā)送密鑰給SSH的客戶端,本地再將密鑰發(fā)回給服務(wù)端,自此連接建立。Hadoop的名稱節(jié)點(NameNode)需要通過SSH來啟動Slave列表中各臺主機(jī)的守護(hù)進(jìn)程。由于SSH需要用戶密碼登錄,但Hadoop并沒有提供SSH輸入密碼登錄的形式,因此,為了能夠在系統(tǒng)運(yùn)行中完成節(jié)點的免密碼登錄和訪問,需要將Slave列表中各臺主機(jī)配置為名稱節(jié)點免密碼登錄它們。配置SSH的主要工作是創(chuàng)建一個認(rèn)證文件,使得用戶以publickey方式登錄,而不用手工輸入密碼。4
Hadoop安裝前的準(zhǔn)備工作安裝SSH、配置SSH無密碼登錄Ubuntu默認(rèn)已安裝了SSHclient,此外還需要安裝SSHserver:$sudoapt-getinstallopenssh-server安裝后,可以使用如下命令登錄本機(jī):$sshlocalhost配置成SSH無密碼登錄,配置步驟如下:1)執(zhí)行如下命令生成秘鑰對cd~/.ssh/#若沒有該目錄,需先執(zhí)行一次sshlocalhostssh-keygen-trsa#生成秘鑰對,會有提示,都按回車即可2)加入授權(quán)cat./id_rsa.pub>>./authorized_keys#加入授權(quán)此時,再執(zhí)行sshlocalhost命令,不用輸入密碼就可以直接登錄了。4
Hadoop安裝前的準(zhǔn)備工作安裝Java環(huán)境1)下載jdk到“/home/hadoop/下載”目錄下:jdk-8u181-linux-x64.tar.gz2)將jdk解壓到/opt/jvm/文件夾中操作步驟:$sudomkdir/opt/jvm#創(chuàng)建目錄$sudotar-zxvf/home/hadoop/下載/jdk-8u181-linux-x64.tar.gz-C/opt/jvm3)配置jdk的環(huán)境變量,打開/etc/profile文件,在文件末尾添加下語句:exportJAVA_HOME=/opt/jvm/jdk1.8.0_181exportJRE_HOME=${JAVA_HOME}/jreexportCLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/libexportPATH=${JAVA_HOME}/bin:$PATH執(zhí)行source命令使其立即生效:$source/etc/profile4
Hadoop安裝前的準(zhǔn)備工作安裝Java環(huán)境查看是否安裝成功:在終端執(zhí)行java-versionLinux系統(tǒng)下Scala版本的Eclipse的安裝與配置1.下載eclipse這里下載的Scala版本的Eclipse是eclipse-SDK-4.7.0-linux.gtk.x86_64.tar.gz。2.安裝eclipse將eclipse-SDK-4.7.0-linux.gtk.x86_64.tar.gz解壓到/opt/jvm文件夾中:$sudotar-zxvf~/下載/eclipse-SDK-4.7.0-linux.gtk.x86_64.tar.gz-C/opt/jvm3.創(chuàng)建eclipse桌面快捷方式圖標(biāo)$sudogedit/usr/share/applications/eclipse.desktop#創(chuàng)建并打開文件4
Hadoop安裝前的準(zhǔn)備工作Linux系統(tǒng)下Scala版本的Eclipse的安裝與配置在彈出的文本編輯器輸入以下內(nèi)容并保存文件:[DesktopEntry]Encoding=UTF-8Name=EclipseComment=EclipseIDEExec=/opt/jvm/eclipse/eclipseIcon=/opt/jvm/eclipse/icon.xpmTerminal=falseStartupNotify=trueType=ApplicationCategories=Application;Development;4
Hadoop安裝前的準(zhǔn)備工作Linux系統(tǒng)下Scala版本的Eclipse的安裝與配置打開文件系統(tǒng),在/usr/share/applications/目錄下找到Eclipse圖標(biāo),右擊,復(fù)制到->桌面,此時,eclipse.desktop出現(xiàn)在桌面,然后右鍵eclipse.desktop圖標(biāo)選擇“允許啟動”,至此,Eclipse的快捷方式就創(chuàng)建完畢了
Spark大數(shù)據(jù)處理框架1 Spark概述2 Spark運(yùn)行機(jī)制3在VirtualBox上安裝Linux集群4Hadoop安裝前的準(zhǔn)備工作5Hadoop的安裝與配置6Spark的安裝及配置7
使用PySpark編寫Python代碼8 安裝pip工具和一些常用的數(shù)據(jù)分析庫9安裝Anaconda和配置JupyterNotebook5
Hadoop的安裝與配置下載Hadoop安裝文件Hadoop2可以通過/apache/hadoop/common/下載,一般選擇下載最新的穩(wěn)定版本,即下載“stable”下的hadoop-2.x.y.tar.gz這個格式的文件,這是編譯好的,另一個包含src的則是Hadoop源代碼,需要進(jìn)行編譯才可使用。下載安裝文件之后,打開一個終端執(zhí)行如下命令:$sudotar-zxf~/下載/hadoop-2.7.7.tar.gz-C/usr/local#解壓$cd/usr/local/$sudomv./hadoop-2.7.7./hadoop#將文件夾名改為hadoop$sudochown-Rhadoop./hadoop#修改文件權(quán)限其中“~/”表示的是“/home/hadoop/”這個目錄。Hadoop解壓后即可使用。5
Hadoop的安裝與配置Hadoop單機(jī)模式配置Hadoop默認(rèn)的模式為非分布式模式(獨(dú)立、本地),解壓后無須進(jìn)行其它配置就可運(yùn)行。Hadoop單機(jī)模式只在一臺機(jī)器上運(yùn)行,存儲采用本地文件系統(tǒng),而不是分布式文件系統(tǒng)HDFS。Hadoop可以在單個節(jié)點(一臺機(jī)器)上以偽分布式的方式運(yùn)行,同一個節(jié)點既作為名稱節(jié)點(NameNode),也作為數(shù)據(jù)節(jié)點(DataNode),讀取的是分布式文件系統(tǒng)HDFS的文件。需要配置相關(guān)文件,才能夠Hadoop以偽分布式模式運(yùn)行,需要修改2個配置文件,即core-site.xml和hdfs-site.xml。Hadoop偽分布式模式配置5
Hadoop的安裝與配置Hadoop偽分布式模式配置$gedit/usr/local/hadoop/etc/hadoop/core-site.xml修改以后,core-site.xml文件的內(nèi)容如下:<configuration><property><name>hadoop.tmp.dir</name><value>file:/usr/local/hadoop/tmp</value><description>Abaseforothertemporarydirectories.</description></property><property><name>fs.defaultFS</name><value>hdfs://localhost:9000</value></property></configuration>hadoop.tmp.dir用于保存臨時文件。fs.defaultFS這個參數(shù),用于指定HDFS的訪問地址5
Hadoop的安裝與配置Hadoop偽分布式模式配置配置文件hdfs-site.xml,修改后的內(nèi)容如下:<configuration>
<property><name>dfs.replication</name><value>1</value></property><property><name>.dir</name><value>file:/usr/local/hadoop/tmp/dfs/name</value></property><property><name>dfs.datanode.data.dir</name><value>file:/usr/local/hadoop/tmp/dfs/data</value></property></configuration>dfs.replication這個參數(shù)用于指定副本的數(shù)量,.dir用于設(shè)定名稱節(jié)點的元數(shù)據(jù)的保存目錄,dfs.datanode.data.dir用于設(shè)定數(shù)據(jù)節(jié)點的數(shù)據(jù)保存目錄。5
Hadoop的安裝與配置Hadoop偽分布式模式配置執(zhí)行名稱節(jié)點格式化修改配置文件以后,要執(zhí)行名稱節(jié)點的格式化,命令如下:$cd/usr/local/hadoop$./bin/hdfsnamenode-format啟動Hadoop執(zhí)行下面命令啟動Hadoop:$cd/usr/local/hadoop$./sbin/start-dfs.sh注意:啟動Hadoop時,如果出現(xiàn)“l(fā)ocalhost:Error:JAVA_HOMEisnotsetandcouldnotbefound.”這樣的錯誤,需要修改hadoop-env.sh文件,將其中的JAVA_HOME替換為絕對路徑,具體實現(xiàn)過程如下:$sudogedit/usr/local/hadoop/etc/hadoop/hadoop-env.sh#打開文件將“exportJAVA_HOME=${JAVA_HOME}”修改為下面所示的內(nèi)容:exportJAVA_HOME=/opt/jvm/jdk1.8.0_1815
Hadoop的安裝與配置Hadoop成功啟動后,可以在Linux系統(tǒng)中打開一個瀏覽器,在地址欄輸入http://localhost:50070就可以查看名稱節(jié)點信息如圖所示、數(shù)據(jù)節(jié)點信息如圖所示,還可以在線查看HDFS中的文件。Hadoop偽分布式模式配置使用Web界面查看HDFS信息5
Hadoop的安裝與配置要使用HDFS,首先需要在HDFS中創(chuàng)建用戶目錄,命令如下:$cd/usr/local/hadoop$./bin/hdfsdfs-mkdir-p/user/hadoop接著把本地文件系統(tǒng)的/usr/local/hadoop/etc/hadoop目錄中的所有xml文件作為后面運(yùn)行Hadoop中自帶的WordCount程序的輸入文件,復(fù)制到分布式文件系統(tǒng)HDFS中的/user/hadoop/input目錄中,命令如下:$cd/usr/local/hadoop$./bin/hdfsdfs-mkdirinput#在HDFS中創(chuàng)建hadoop用戶對應(yīng)的input目錄$./bin/hdfsdfs-put./etc/hadoop/*.xmlinput#把本地文件復(fù)制到input目錄中Hadoop偽分布式模式配置運(yùn)行Hadoop偽分布式實例5
Hadoop的安裝與配置現(xiàn)在可以運(yùn)行Hadoop中自帶的WordCount程序,命令如下:$./bin/hadoopjar./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jarwordcountinputoutput運(yùn)行結(jié)束后,可以通過如下命令查看HDFS中output文件夾中的內(nèi)容:$./bin/hdfsdfs-catoutput/*需要強(qiáng)調(diào)的是,Hadoop運(yùn)行程序時,輸出目錄不能存在,否則會提示錯誤信息。因此,若要再次執(zhí)行wordcount程序,需要執(zhí)行如下命令刪除HDFS中的output文件夾:$./bin/hdfsdfs-rm-routput#刪除output文件夾Hadoop偽分布式模式配置運(yùn)行Hadoop偽分布式實例5
Hadoop的安裝與配置如果要關(guān)閉Hadoop,可以執(zhí)行如下命令:$cd/usr/local/hadoop$./sbin/stop-dfs.shHadoop偽分布式模式配置關(guān)閉Hadoop5
Hadoop的安裝與配置如果要繼續(xù)把其它命令的路徑也加入到PATH變量中,也需要修改~/.bashrc這個文件,在上述路徑的后面用英文冒號“:”隔開,把新的路徑加到后面即可。添加后,執(zhí)行命令source~/.bashrc使設(shè)置生效。然后在任何目錄下輸入start-dfs.sh就可啟動Hadoop。停止Hadoop輸入stop-dfs.sh命令。Hadoop偽分布式模式配置配置PATH變量把start-dfs.sh、stop-dfs.sh等命令所在的目錄/usr/local/hadoop/sbin加入到環(huán)境變量PATH中,在任何目錄下都可以直接使用命令start-dfs.sh啟動Hadoop,不用帶上命令路徑。使用gedit編輯器打開~/.bashrc這個文件,然后在這個文件的最前面位置加入如下單獨(dú)一行:exportPATH=$PATH:/usr/local/hadoop/sbin5
Hadoop的安裝與配置采用兩個虛擬機(jī)來搭建分布式集群環(huán)境:一個虛擬機(jī)作為Master節(jié)點,另一個虛擬機(jī)作為Slave1節(jié)點。Hadoop集群的安裝配置大致包括以下步驟。在Master節(jié)點上創(chuàng)建hadoop用戶、安裝SSH服務(wù)端、安裝Java環(huán)境。在Master節(jié)點上安裝Hadoop,并完成配置。在Slave1節(jié)點上創(chuàng)建hadoop用戶、安裝SSH服務(wù)端、安裝Java環(huán)境。將Master節(jié)點上的/usr/local/hadoop目錄復(fù)制到Slave1節(jié)點上。在Master節(jié)點上開啟Hadoop。完成步驟①~③之后:Hadoop分布式模式配置5
Hadoop的安裝與配置網(wǎng)絡(luò)配置將兩個虛擬機(jī)的網(wǎng)絡(luò)連接方式都改為“橋接網(wǎng)卡”模式。以實現(xiàn)兩個節(jié)點的互聯(lián)。一定要確保各個節(jié)點的MAC地址不能相同,否則會出現(xiàn)IP地址沖突。Hadoop分布式模式配置5
Hadoop的安裝與配置網(wǎng)絡(luò)配置Hadoop分布式模式配置網(wǎng)絡(luò)配置完成以后,通過ifconfig命令查看兩個虛擬機(jī)的IP地址,本書所用的Master節(jié)點的IP地址為15,所用的Slave1節(jié)點的IP地址為14。在Master節(jié)點上執(zhí)行如下命令修改Master節(jié)點中的/etc/hosts文件:#vim/etc/hosts在hosts文件中增加如下兩條IP地址和主機(jī)名映射關(guān)系,即集群中兩個節(jié)點與IP地址的映射關(guān)系。15Master14Slave1hosts文件中只能有一個,其對應(yīng)的主機(jī)名為localhost,如果有多余映射,應(yīng)刪除。修改后需要重啟Linux系統(tǒng)。5
Hadoop的安裝與配置網(wǎng)絡(luò)配置Hadoop分布式模式配置參照Master節(jié)點的配置方法,修改Slave1節(jié)點中的/etc/hosts文件,在hosts文件中增加如下兩條IP地址和主機(jī)名映射關(guān)系:15Master14Slave1修改完成以后,重啟Slave1的Linux系統(tǒng)。在兩個節(jié)點上測試是否相互ping得通,如果ping不通,后面就無法順利配置成功。$pingSlave1-c3#在Master上ping三次Slave1,否則要按Ctrl+C中斷ping命令$pingMaster-c3#在Slave1上ping三次Master5
Hadoop的安裝與配置SSH無密碼登錄Slave1節(jié)點Hadoop分布式模式配置必須要讓Master節(jié)點可以SSH無密碼登錄Slave1節(jié)點。首先,生成Master節(jié)點的公鑰:$cd~/.ssh$rm./id_rsa*#刪除之前生成的公鑰(如果已經(jīng)存在)$ssh-keygen-trsa#Master生成公鑰,執(zhí)行后,遇到提示信息,一路按回車就可以5
Hadoop的安裝與配置SSH無密碼登錄Slave1節(jié)點Hadoop分布式模式配置在Master節(jié)點上執(zhí)行如下命令:$cat./id_rsa.pub>>./authorized_keys再執(zhí)行命令sshMaster來驗證一下,遇到提示信息,輸入yes即可,執(zhí)行exit命令返回原來的終端。5
Hadoop的安裝與配置SSH無密碼登錄Slave1節(jié)點Hadoop分布式模式配置在Master節(jié)點將上述生成的公鑰傳輸?shù)絊lave1節(jié)點:$scp~/.ssh/id_rsa.pubhadoop@Slave1:/home/hadoop/scp是securecopy的簡寫,用于在Linux上進(jìn)行遠(yuǎn)程復(fù)制文件。執(zhí)行scp時會要求輸入Slave1上hadoop用戶的密碼,輸入完成后會提示傳輸完畢。在Slave1節(jié)點上將SSH公鑰加入授權(quán):hadoop@Slave1:~$mkdir~/.ssh#若~/.ssh不存在,可通過該命令進(jìn)行創(chuàng)建hadoop@Slave1:~$cat~/id_rsa.pub>>~/.ssh/authorized_keys5
Hadoop的安裝與配置SSH無密碼登錄Slave1節(jié)點Hadoop分布式模式配置執(zhí)行上述命令后,在Master節(jié)點上就可以無密碼SSH登錄到Slave1節(jié)點了,可在Master節(jié)點上執(zhí)行如下命令進(jìn)行檢驗:$sshSlave15
Hadoop的安裝與配置配置PATH變量Hadoop分布式模式配置在Master節(jié)點上配置PATH變量,以便在任意目錄中可直接使用hadoop、hdfs等命令。執(zhí)行vim~/.bashrc命令,打開~/.bashrc文件,在該文件最上面的位置加入下面一行內(nèi)容,注意之后要加上“:”:exportPATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin保存后執(zhí)行命令source~/.bashrc使配置生效。5
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置配置分布式環(huán)境時,需要修改/usr/local/hadoop/etc/hadoop目錄下5個配置文件,具體包括slaves、core-site.xml、hdfs-site.xml、mapred-site.xml、yarn-site.xml。修改slaves文件:執(zhí)行vim/usr/local/hadoop/etc/hadoop/slaves命令,打開/usr/local/hadoop/etc/hadoop/slaves文件,由于只有一個Slave節(jié)點Slave1,所以讓Master節(jié)點既充當(dāng)名稱節(jié)點又充當(dāng)數(shù)據(jù)節(jié)點,在文件中添加如下兩行內(nèi)容:localhostSlave15
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置修改core-site.xml文件:<configuration><property><name>fs.defaultFS</name><value>hdfs://Master:9000</value></property><property><name>hadoop.tmp.dir</name><value>file:/usr/local/hadoop/tmp</value><description>Abaseforothertemporarydirectories.</description></property></configuration>core-site.xml文件用來配置Hadoop集群的通用屬性,包括指定namenode的地址、指定使用Hadoop臨時文件的存放路徑等。5
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置修改hdfs-site.xml文件:<configuration><property><name>node.secondary.http-address</name><value>Master:50090</value></property><property><name>dfs.replication</name><value>2</value></property><property><name>.dir</name><value>file:/usr/local/hadoop/tmp/dfs/name</value></property>Master節(jié)點既充當(dāng)名稱節(jié)點又充當(dāng)數(shù)據(jù)節(jié)點,此外還有一個Slave節(jié)點Slave1,即集群中有兩個數(shù)據(jù)節(jié)點,所以dfs.replication的值設(shè)置為25
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置修改hdfs-site.xml文件:
<property><name>dfs.datanode.data.dir</name><value>file:/usr/local/hadoop/tmp/dfs/data</value></property></configuration>hdfs-site.xml文件用來配置分布式文件系統(tǒng)HDFS的屬性,包括指定HDFS保存數(shù)據(jù)的副本數(shù)量,指定HDFS中NameNode的存儲位置,指定HDFS中DataNode的存儲位置等。5
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置修改mapred-site.xml文件:/usr/local/hadoop/etc/hadoop目錄下有一個mapred-site.xml.template文件,需要修改文件名稱,把它重命名為mapred-site.xml:$cd/usr/local/hadoop/etc/hadoop$mvmapred-site.xml.templatemapred-site.xml$vimmapred-site.xml#打開mapred-site.xml文件然后把mapred-site.xml文件配置成如下內(nèi)容:<configuration><property><name></name><value>yarn</value></property>5
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置
<property><name>mapreduce.jobhistory.address</name><value>Master:10020</value></property><property><name>mapreduce.jobhistory.webapp.address</name><value>Master:19888</value></property></configuration>5
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置修改yarn-site.xml文件:<configuration><property><name>yarn.resourcemanager.hostname</name><value>Master</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property></configuration>YARN是MapReduce的調(diào)度框架。yarn-site.xml文件用于配置YARN的屬性,包括指定namenodeManager獲取數(shù)據(jù)的方式,指定resourceManager的地址。5
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置把Master節(jié)點上的/usr/local/hadoop文件夾復(fù)制到各個節(jié)點上。如果之前運(yùn)行過偽分布式模式,建議在切換到集群模式之前先刪除在偽分布模式下生成的臨時文件。在Master節(jié)點上實現(xiàn)上述要求的執(zhí)行命令如下:$cd/usr/local$sudorm-r./hadoop/tmp#刪除Hadoop臨時文件$sudorm-r./hadoop/logs/*#刪除日志文件$tar-zcf~/hadoop.master.tar.gz./hadoop#先壓縮再復(fù)制$cd~$scp./hadoop.master.tar.gzSlave1:/home/hadoop然后在Slave1節(jié)點上執(zhí)行如下命令:$sudorm-r/usr/local/hadoop#刪掉舊的(如果存在)$sudotar-zxf~/hadoop.master.tar.gz-C/usr/local$sudochown-Rhadoop/usr/local/hadoop5
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置Hadoop集群包含兩個基本模塊:分布式文件系統(tǒng)HDFS和分布式計算框架MapReduce。首次啟動Hadoop集群時,需要先在Master節(jié)點上格式化分布式文件系統(tǒng)HDFS,命令如下:$hdfsnamenode-format在Master節(jié)點上啟動Hadoop集群的命令如下:$start-dfs.sh$start-yarn.sh$mr-jobhistory-daemon.shstarthistoryserver#啟動Hadoop歷史服務(wù)器5
Hadoop的安裝與配置配置分布式環(huán)境Hadoop分布式模式配置關(guān)閉Hadoop集群,需要在Master節(jié)點執(zhí)行如下命令:$stop-yarn.sh$stop-dfs.sh$mr-jobhistory-daemon.shstophistoryserver此外,還可以全部啟動或者全部停止Hadoop集群:啟動命令:start-all.sh停止命令:stop-all.sh
Spark大數(shù)據(jù)處理框架1 Spark概述2 Spark運(yùn)行機(jī)制3在VirtualBox上安裝Linux集群4Hadoop安裝前的準(zhǔn)備工作5Hadoop的安裝與配置6Spark的安裝及配置7
使用PySpark編寫Python代碼8 安裝pip工具和一些常用的數(shù)據(jù)分析庫9安裝Anaconda和配置JupyterNotebook6Spark的安裝及配置單機(jī)模式配置spark-3.2.0-bin-hadoop2.7.tgz版本,下載到“/home/hadoop/下載”目錄下本書采用的環(huán)境配置是:Linux系統(tǒng):Ubuntu16.04;Hadoop2.7.7版本;JDK1.8版本;Spark3.2.0版本。使用hadoop用戶登錄Linux系統(tǒng),打開一個終端,解壓安裝文件。$sudotar-zxf~/下載/spark-3.2.0-bin-hadoop2.7.tgz-C/usr/local/#解壓$cd/usr/local$sudomv./spark-3.2.0-bin-hadoop2.7./spark#更改文件名$sudochown-Rhadoop:hadoop./spark#修改文件權(quán)限復(fù)制Spark安裝目錄下的conf目錄下的模板文件spark-env.sh.template并命名為spark-env.sh,編輯此文件:$cd/usr/local/spark$cp./conf/spark-env.sh.template./conf/spark-env.sh#復(fù)制生成spark-env.sh文件6Spark的安裝及配置單機(jī)模式配置編輯spark-env.sh文件,在該文件的第一行添加配置信息:$gedit/usr/local/spark/conf/spark-env.sh#用gedit編輯器打開spark-env.sh文件在spark-env.sh文件的第一行添加以下配置信息:exportSPARK_DIST_CLASSPATH=$(/usr/local/hadoop/bin/hadoopclasspath)有了上面的配置信息以后,Spark就可以把數(shù)據(jù)存儲到Hadoop分布式文件系統(tǒng)HDFS中,也可以從HDFS中讀取數(shù)據(jù)。如果沒有配置上面的信息,Spark就只能讀寫本地數(shù)據(jù),無法讀寫HDFS中的數(shù)據(jù)。配置完成后就可以直接使用Spark,不需要像Hadoop那樣運(yùn)行啟動命令。運(yùn)行Spark自帶的求π的近似值實例,以驗證Spark是否安裝成功:$cd/usr/local/spark/bin#進(jìn)入Spark安裝包的bin目錄$./run-exampleSparkPi#運(yùn)行求π的近似值實例6Spark的安裝及配置偽分布式模式配置Spark單機(jī)偽分布式是在一臺機(jī)器上既有Master進(jìn)程又有Worker進(jìn)程。使用gedit編輯器打開spark-env.sh文件,在文件末尾添加以下配置信息:exportJAVA_HOME=/opt/jvm/jdk1.8.0_181exportHADOOP_HOME=/usr/local/hadoopexportHADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoopexportSPARK_MASTER_IP=MasterexportSPARK_LOCAL_IP=Master參數(shù)解釋JAVA_HOMEJava的安裝路徑HADOOP_HOMEHadoop的安裝路徑HADOOP_CONF_DIRHadoop配置文件的路徑SPARK_MASTER_IPSpark主節(jié)點的IP或機(jī)器名SPARK_LOCAL_IPSpark本地的IP或機(jī)器名6Spark的安裝及配置偽分布式模式配置3.切換到/sbin目錄下啟動集群$cd/usr/local/hadoop$./sbin/start-dfs.sh切換到/sbin目錄下執(zhí)行如下命令啟動Spark偽分布式模式。$cd/usr/local/spark/sbin$./start-all.sh#啟動命令,停止命令為./stop-all.sh$jps#查看進(jìn)程3875NameNode4022DataNode15082Master15243Jps15196Worker4236SecondaryNameNode
Spark大數(shù)據(jù)處理框架1 Spark概述2 Spark運(yùn)行機(jī)制3在VirtualBox上安裝Linux集群4Hadoop安裝前的準(zhǔn)備工作5Hadoop的安裝與配置6Spark的安裝及配置7使用PySpark編寫Python代碼8 安裝pip工具和一些常用的數(shù)據(jù)分析庫9安裝Anaconda和配置JupyterNotebook7使用SparkShell編寫Scala代碼啟動SparkShellSparkShell
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 安全生產(chǎn)風(fēng)險分級管控和隱患排查治理指導(dǎo)手冊
- (范文)鉆石首飾項目立項報告
- (2024)氮化硅陶瓷粉體生產(chǎn)建設(shè)項目可行性研究報告(一)
- 2022-2023學(xué)年天津市寶坻九中高二(上)期末語文試卷
- 2023年網(wǎng)絡(luò)應(yīng)用軟件項目融資計劃書
- 2023年膠基糖果中基礎(chǔ)劑物質(zhì)項目融資計劃書
- 機(jī)械制圖題庫及答案
- 廣東省茂名市高州市2024屆九年級上學(xué)期期末考試數(shù)學(xué)試卷(含答案)
- 養(yǎng)老院老人生活照顧服務(wù)質(zhì)量管理制度
- 養(yǎng)老院老人健康監(jiān)測人員管理制度
- 2024年國開思政課《馬克思主義基本原理》大作業(yè)、形考及學(xué)習(xí)行為表現(xiàn)試題及答案請理論聯(lián)系實際談一談你對實踐的理解
- 2024屆浙江高考英語寫作分類訓(xùn)練:建議信(含答案)
- 《民航客艙設(shè)備操作與管理》課件-項目二 客艙服務(wù)設(shè)備
- 2024年長三角一體化示范區(qū)蘇州灣投資發(fā)展(江蘇)集團(tuán)有限公司招聘筆試沖刺題(帶答案解析)
- 頸部脊髓損傷課件
- JT-T 1495-2024 公路水運(yùn)危險性較大工程專項施工方案編制審查規(guī)程
- 2024-2030年中國不銹鋼生物反應(yīng)器行業(yè)市場發(fā)展趨勢與前景展望戰(zhàn)略分析報告
- 物聯(lián)網(wǎng)系統(tǒng)建模與仿真智慧樹知到期末考試答案章節(jié)答案2024年長春大學(xué)
- 康復(fù)治療技術(shù)的職業(yè)規(guī)劃課件
- GB 32032-2024金礦開采、選冶和金精煉單位產(chǎn)品能源消耗限額
- 手術(shù)部位標(biāo)識標(biāo)準(zhǔn)
評論
0/150
提交評論