主頁 > 知識庫 > pycharm利用pyspark遠(yuǎn)程連接spark集群的實(shí)現(xiàn)

pycharm利用pyspark遠(yuǎn)程連接spark集群的實(shí)現(xiàn)

熱門標(biāo)簽:海南400電話如何申請 公司電話機(jī)器人 激戰(zhàn)2地圖標(biāo)注 騰訊外呼線路 白銀外呼系統(tǒng) 唐山智能外呼系統(tǒng)一般多少錢 陜西金融外呼系統(tǒng) 哈爾濱ai外呼系統(tǒng)定制 廣告地圖標(biāo)注app

0 背景

由于工作需要,利用spark完成機(jī)器學(xué)習(xí)。因此需要對spark集群進(jìn)行操作。所以利用pycharm和pyspark遠(yuǎn)程連接spark集群。這里記錄下遇到的問題及方法。
主要是參照下面的文獻(xiàn)完成相應(yīng)的內(nèi)容,但是具體問題要具體分析。

1 方法

1.1 軟件配置
spark2.3.3, hadoop2.6, python3
1.2 spark配置
Spark集群的每個(gè)節(jié)點(diǎn)的Python版本必須保持一致。在每個(gè)節(jié)點(diǎn)的$SPARK_HOME/conf/spark-env.sh中添加一行:具體看你的安裝目錄。

export PYSPARK_PYTHON=/home/hadoop/anaconda2/bin/python3

此步驟就是將python添加到spark的配置中。
此時(shí),在服務(wù)器命令行輸入pyspark時(shí),可以正常進(jìn)入spark。
1.3本地配置
1.3.1 首先將spark2.3.3從服務(wù)器拷貝到本地。
注意: 由于我集群安裝的是spark-2.3.3-bin-without-hadoop。但是拷貝到本地后,總是報(bào)錯(cuò)Java gateway process… 。同時(shí)我將hadoop2.6,的包也從服務(wù)器拷貝到本地加載到程序中,同樣報(bào)錯(cuò)。
最后,直接從spark的官網(wǎng)中,下載了spark-2.3.3-bin-hadoop2.6,這回就可以了。
pyspark的版本與spark的版本最好對應(yīng)。比如pyspark2.3.3,spark2.3.3

# os.environ['SPARK_HOME'] = r"F:\big_data\spark-2.3.3-bin-without-hadoop"(無用)
os.environ['SPARK_HOME'] = r"F:\big_data\spark-2.3.3-bin-hadoop2.6"(有用)
# os.environ["HADOOP_HOME"] = r"F:\big_data\hadoop-2.6.5"(無用)
# os.environ['JAVA_HOME'] = r"F:\Java\jdk1.8.0_144"(無用)

1.3.2
C:\Windows\System32….\hosts(Windows機(jī)器)中加入Spark集群Master節(jié)點(diǎn)的IP與主機(jī)名的映射。需要管理員權(quán)限修改。


其中的spark_cluster就是對于Master的IP的映射名。(直接寫IP一樣可以,映射名是為了方便)
1.3.3
添加剛剛下載解壓好的spark的python目錄到pycharm的project structure

1.3.4
新建py文件,編輯Edit Configurations添加SPARK_HOME變量

注意: 在實(shí)際中,這個(gè)不添加好像也可以。只需要在程序中加載了spark_home.比如os.envion(…spark…)

2 測試

import os
from pyspark import SparkContext
from pyspark import SparkConf
# os.environ['SPARK_HOME'] = r"F:\big_data\spark-2.3.3-bin-without-hadoop"
os.environ['SPARK_HOME'] = r"F:\big_data\spark-2.3.3-bin-hadoop2.6"
# os.environ["HADOOP_HOME"] = r"F:\big_data\hadoop-2.6.5"
# os.environ['JAVA_HOME'] = r"F:\Java\jdk1.8.0_144"
print(0)
conf = SparkConf().setMaster("spark://spark_cluster:7077").setAppName("test")
sc = SparkContext(conf=conf)
print(1)
logData = sc.textFile("file:///opt/spark-2.3.3-bin-without-hadoop/README.md").cache()
print(2)
print("num of a",logData)
sc.stop()

3 參考

PyCharm+PySpark遠(yuǎn)程調(diào)試的環(huán)境配置的方法
Spark下:Java gateway process exited before sending the driver its port number等問題

估計(jì)每個(gè)人遇到的問題不一樣,但是大同小異,具體問題具體分析。

到此這篇關(guān)于pycharm利用pyspark遠(yuǎn)程連接spark集群的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)pyspark遠(yuǎn)程連接spark集群內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • pyspark 讀取csv文件創(chuàng)建DataFrame的兩種方法
  • pyspark.sql.DataFrame與pandas.DataFrame之間的相互轉(zhuǎn)換實(shí)例
  • pyspark給dataframe增加新的一列的實(shí)現(xiàn)示例
  • PyCharm搭建Spark開發(fā)環(huán)境實(shí)現(xiàn)第一個(gè)pyspark程序
  • Linux下遠(yuǎn)程連接Jupyter+pyspark部署教程
  • pycharm編寫spark程序,導(dǎo)入pyspark包的3中實(shí)現(xiàn)方法
  • 如何將PySpark導(dǎo)入Python的放實(shí)現(xiàn)(2種)
  • pyspark對Mysql數(shù)據(jù)庫進(jìn)行讀寫的實(shí)現(xiàn)
  • pyspark創(chuàng)建DataFrame的幾種方法
  • windowns使用PySpark環(huán)境配置和基本操作

標(biāo)簽:黔西 鷹潭 惠州 常德 黑龍江 四川 益陽 上海

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《pycharm利用pyspark遠(yuǎn)程連接spark集群的實(shí)現(xiàn)》,本文關(guān)鍵詞  pycharm,利用,pyspark,遠(yuǎn)程,;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《pycharm利用pyspark遠(yuǎn)程連接spark集群的實(shí)現(xiàn)》相關(guān)的同類信息!
  • 本頁收集關(guān)于pycharm利用pyspark遠(yuǎn)程連接spark集群的實(shí)現(xiàn)的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章