使用anaconda3安裝pyspark


1. 下載安裝:

下載地址:wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-5.0.1-Linux-x86_64.sh --no-check-certificate

(最新版本:wget https://mirrors.tuna.tsinghua.edu.cn/anaconda/archive/Anaconda3-2021.11-Linux-x86_64.sh --no-check-certificate)

下載完后,執行Anaconda3-5.0.1-Linux-x86_64.sh腳本就可以安裝。

安裝提示:

提示一:

Do you accept the license terms? [yes|no]
[no] >>> yes

提示二:

Anaconda3 will now be installed into this location:
/home/hadoop//anaconda3

- Press ENTER to confirm the location
- Press CTRL-C to abort the installation
- Or specify a different location below

這時候可以自己輸入指定的安裝目錄,比如我輸入/home/hadoop/bigdata/anaconda3/

 

提示三:確認是否自動加安裝路徑添加到環境變量中,選擇yes

Do you wish the installer to prepend the Anaconda3 install location
to PATH in your /home/hadoop//.bashrc ? [yes|no]
[no] >>> yes

2. 配置jupyter notebook服務

2.1 生成配置文件

cd /home/hadoop/bigdata/anaconda3/bin/
./jupyter notebook --generate-config

2.2 生成密碼

./ipython 

In [1]: from notebook.auth import passwd
In [2]: passwd()
Enter password: 
Verify password: 
Out[2]: 'sha1:297308f26ac6:bc524d2e1afafdbb798456a9161254962968b113'
In [3]: quit()

----------------------新版本-----------------------------------

In [1]: from notebook.auth import passwd

In [2]: passwd()
Enter password:
Verify password:
Out[2]: 'argon2:$argon2id$v=19$m=10240,t=10,p=8$qprVWqc29AMaxanqkCjs1g$AQv2lP0mb05cVRUSjIVMZA'
In [3]: quit()

這時候把Out[2] 上顯示的密碼記錄下來。

2.3 修改jupyter_notebook_config.py文件 

vim jupyter_notebook_config.py 
#c.NotebookApp.password_required=True
c.NotebookApp.notebook_dir='/home/hadoop/jupyter_notebook'
#c.NotebookApp.allow_root=True
c.NotebookApp.ip='*'
c.NotebookApp.open_browser=False
#c.NotebookApp.password='剛才生成的sha1'
c.NotebookApp.port=7070 #此端口為不使用pyspark的端口

3. 配置環境變量

 vim /etc/profile

export ANACONDA_HOME=/home/hadoop/bigdata/anaconda3
export PATH=$PATH:$ANACONDA_HOME/bin
export PYSPARK_DRIVER_PYTHON=jupyter-notebook
export PYSPARK_DRIVER_PYTHON_OPTS="--ip=0.0.0.0 --port=8888"

 

或者,也可以只在/etc/profile中配置anaconda3的PATH路徑如下:

# added by Anaconda3 installer
export PATH=/home/hadoop/bigdata/anaconda3/bin:$PATH

然后在spark的spark-env.sh配置如下

 

 

 

4. 創建虛擬環境,並激活

conda create -n pyspark-env python=3.6
source activate pyspark-env

 

5. 在虛擬環境中安裝依賴包

conda install -n pyspark-env pyarrow=0.9.0
conda install -n pyspark-env numpy=1.16.6
conda install -n pyspark-env mkl=2021.4.0

 

6.啟動

pyspark

 

 

 

7. 在瀏覽器中輸入 ip地址:8888

 

 

 

 

建立文件夾,建立python3測試文件。

"""SimpleApp.py"""
from pyspark.sql import SparkSession

logFile = "/tmp/logs/LICENSE"  

# Should be some file on your system
spark = SparkSession.builder.appName("SimpleApp").getOrCreate()
logData = spark.read.text(logFile).cache()

numAs = logData.filter(logData.value.contains('a')).count()
numBs = logData.filter(logData.value.contains('b')).count()

print("Lines with a: %i, lines with b: %i" % (numAs, numBs))

spark.stop()
SimpleApp.py

 上面是測試代碼,logFile是存在於hdfs上的文件,自己找個文本文件上傳即可。

 

 

執行機器學習樣例 

 

8. 指定jupyter虛擬環境配置

 注意:此時在jupyter notebook中運行環境並不是我們指定的虛擬環境,而只是默認的環境。

 所以需要參考 https://www.cnblogs.com/30go/p/16028840.html 來完成指定虛擬環境在jupyter中的配置。

 

9.  通過打包不同環境解決不同的版本問題

使用conda可以解決不同的腳本需要不同版本的python或者其他環境。

通過將環境打包,在執行任務時指定環境包即可。

zip -r -9 -q py36spark.zip py36spark
或者
conda pack -n py36spark

建議使用conda pack,壓縮比高,生成的文件較小。

安裝conda pack 建議直接用pip install conda-pack

 

10. 后台啟動腳本

新建腳本文件名 start_pyspark_backend.sh,放到spark的目錄中/home/hadoop/bigdata/spark。

命令如下:

#!/bin/sh

nohup pyspark > ./logs/pyspark.log 2>&1 & echo $! > pyspark.pid

這樣執行該腳本,就在后台啟動。

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM