導航:首頁 > 編程語言 > spark庫python

spark庫python

發布時間:2023-05-12 15:48:10

⑴ 最新的spark支持python的什麼版本

兩種方法:
使用 spark-submit 解釋執行python腳本
使用 python 解釋執行python腳本
1. 使用Spark-submit解釋執行python腳本
python腳本中需要在開頭導入spark相關模塊,調用時使用spark-submit提交,示例代碼如下:
===========================================================
"""odflow.py"""
from pyspark import SparkContext
fileDir = "/TripChain3_Demo.txt"
# sc = SparkContext("local", "ODFlow")
sc = SparkContext("spark://ITS-Hadoop10:7077", "ODFlow")
lines = sc.textFile(fileDir)
# python不能直接寫多行的lambda表達式,所以要封裝在函數中
def toKV(line):
arr = line.split(",")
t = arr[5].split(" ")[1].split(":")
return (t[0]+t[1]+","+arr[11]+","+arr[18],1)
r1 = lines.map( lambda line : toKV(line) ).receByKey(lambda a,b: a+b)
# 排序並且存入一個(repartition)文件中
r1.sortByKey(False).saveAsTextFile("/pythontest/output")
===========================================================
發布命令為:
spark-submit \
--master spark://ITS-Hadoop10:7077 \
odflow.py
2. 使用 python 解釋執行python腳本
直接用python執行會出現錯誤:
ImportError: No mole named pyspark
ImportError: No mole named py4j.java_gateway
缺少pyspark和py4j這兩個模塊,這兩個包在Spark的安裝目錄里,需要在環境變數里定義PYTHONPATH,編輯~/.bashrc或者/etc/profile文件均可
vi ~/.bashrc # 或者 sudo vi /etc/profile
# 添加下面這一行
export PYTHONPATH=$SPARK_HOME/python/:$SPARK_HOME/python/lib/py4j-0.8.2.1-src.zip:$PYTHONPATH
# 使其生效
source ~/.bashrc # 或者 sudo source /etc/profile
然後關閉終端,重新打開,用python執行即可
python odflow.py

⑵ 如何在ipython或python中使用Spark

在ipython中使用spark
說明:
spark 1.6.0
scala 2.10.5
spark安裝路徑是/usr/local/spark;已經在.bashrc中配置了SPARK_HOME環境變數。
方法一
/usr/local/Spark/bin/pyspark默認打開的是Python,而不是ipython。通過在pyspark文件中添加一行,來使用ipython打開。
cp pyspark ipyspark
vi ipyspark
# 在最前面添加
IPYTHON=1
# 啟動
ipyspark
方法二:
通過為spark創建一個ipython 配置的方式實現。
# 為spark創建一個ipython 配置
ipython profile create spark
# 創建啟動配置文件
cd ~/.config/ipython/profile_spark/startup
vi 00-pyspark-setup.py
在00-pyspark-setup.py中添加如下內容:
import os
import sys
# Configure the environment
if 'SPARK_HOME' not in os.environ:
os.environ['SPARK_HOME'] = '/srv/spark'
# Create a variable for our root path
SPARK_HOME = os.environ['SPARK_HOME']
# Add the PySpark/py4j to the Python Path
sys.path.insert(0, os.path.join(SPARK_HOME, "python", "pyspark"))
sys.path.insert(0, os.path.join(SPARK_HOME, "python", "lib", "py4j-0.9-src.zip"))
sys.path.insert(0, os.path.join(SPARK_HOME, "python"))
啟動ipython
ipython –profile spark
測試程序
在ipython中輸入一下命令,如果下面的程序執行完後輸出一個數字,說明正確。
from pyspark import SparkContext
sc = SparkContext( 'local', 'pyspark')
def isprime(n):
"""
check if integer n is a prime
"""
# make sure n is a positive integer
n = abs(int(n))
# 0 and 1 are not primes
if n < 2:
return False
# 2 is the only even prime number
if n == 2:
return True
# all other even numbers are not primes
if not n & 1:
return False
# for all odd numbers
for x in range(3, int(n**0.5)+1, 2):
if n % x == 0:
return False
return True
# Create an RDD of numbers from 0 to 1,000,000
nums = sc.parallelize(xrange(1000000))
# Compute the number of primes in the RDD
print 「Result: 」, nums.filter(isprime).count()
方法三
將上面的程序放入test.py文件,執行命令python test.py。發現錯誤。因為沒有將pyspark路徑加入PYTHONPATH環境變數。
在~/.bashrc或/etc/profile中添加如下內容:
# python can call pyspark directly
export PYTHONPATH=$SPARK_HOME/python:$SPARK_HOME/python/pyspark:$SPARK_HOME/python/lib/py4j-0.9-src.zip:$PYTHONPATH
執行如下命令:
# 使配置生效
source ~/.bashrc
# 測試程序
python test.py
此時,已經能夠運行了。

⑶ python開發spark環境該如何配置,又該如何操作

1)輸入:welcome="Hello!"回車

再輸入:printwelcome或者直接welcome回車就可以看到輸出Hello!

2)

[html]viewplain
welcome="hello"
you="world!"
printwelcome+you


輸出:helloworld!

以上使用的是字元串,變數還有幾種類型:數,字元串,列表,字典,文件。其他的和別的語言類似,下面先講下列表:

3)

[html]viewplain
my_list=[]//這個就產生了一個空的列表。然後給它賦值
my_list=[1,2]
printmy_list
my_list.append(3)
printmy_list

4)字典:

[html]viewplain
contact={}
contact["name"]="shiyuezhong"
contact["phone"]=12332111

5)結合列表和字典:

[html]viewplain
contact_list=[]
contact1={}
contact1['name']='shiyuezhong'
contact1['phone']=12332111
contact_list.append(contact1)
contact2={}
contact2['name']='buding'
contact2['phone']=88888888
contact_list.append(contact2)

⑷ 求助,python + spark運行程序出現錯誤

tmprdd1 = csdnRDD.map(lambda x: (x.split("\t")[2]))
x.split("\t")會產生一個list,有些數據是異常異常,產生的list不一定會有三個元素,所以就弊困會異常退出。
你可以使用csdnRDD.map(lambda x:x.split("\t")).filter(lambda x:len(x)<3) 看看有哪一寫異常數據,然後確定如何過濾掉這些異銀穗常數據。租搏念

⑸ 學習spark,必須要會python嗎

使用Spark,Scala不是必須的,Spark有Java、Python、R的API。
但是要想深入學習,還是建議學習Scala的。
如果你會Scala,Spark都不用怎麼學。因為一般的Scala程序就是這么寫的,用Spark的區別就是換了一套API而已.

⑹ Spark中的dataFrame如何實現Python中dataFrame的describe功能

#!/usr/bin/env python3# -*- coding: utf-8 -*-"升埋""
Created on Fri Jun 8 16:27:57 2018
@author: luogan
"""慶盯import pandas as pdfrom pyspark.sql import SparkSession
spark= SparkSession\
.builder \
.appName("dataFrame") \
.getOrCreate()# Loads data.ll3=pd.DataFrame([[1,2],[3,4]],columns=['a','b'吵差螞])

cc=ll3.values.tolist()

dd=list(ll3.columns)#df=spark.createDataFrame(ll3)#turn pandas.DataFrame to spark.dataFramespark_df = spark.createDataFrame(cc, dd)

print('spark.dataFram=',spark_df.show())#turn spark.dataFrame to pandas.DataFrame pandas_df = spark_df .toPandas()

print('pandas.DataFrame=',pandas_df)

⑺ spark python腳本怎麼執行

前段時間使用了一下google的博客空間,感覺也很一般,所以現在把那裡的幾篇文章轉過來。
執行python腳本只需要對python文件做如下操作即可:
在python文件里第一行加上#!
/usr/bin/python,即你的python解釋器所在的目錄。另外還有一種寫法是#!
/usr/bin/env
python
編輯完成python腳本文件後為它加上可執行許可權。例如你的python腳本文件叫做runit.py,那麼就在shell中輸入如下命令:chmod
+x
runit.py
之後直接在shell中輸入./runit.py就可以執行你的python程序了。
當然這是在Linux下的操作,如果想在windows下直接執行Python程序,就需要使用py2exe工具將python源程序編譯成exe文件了。

⑻ 如何運行含spark的python腳本

2~spark$ bin/spark-submit first.py
-----------first.py-------------------------------
from pyspark import SparkConf, SparkContext
conf = SparkConf().setMaster("local").setAppName("My App")
sc = SparkContext(conf = conf)
lines = sc.textFile("first.py")
pythonLines = lines.filter(lambda line: "Python" in line)
print "hello python"
print pythonLines.first()
print pythonLines.first()
print "hello spark!"
---------------------------------------------------
hello python
pythonLines = lines.filter(lambda line: "Python" in line)
pythonLines = lines.filter(lambda line: "Python" in line)
hello spark!

到spark的安裝目錄下/bin 下面 spark-submit ***.py 即可

⑼ spark部署python腳本怎麼部署三方庫

1、Spark腳本提交/運行/部署
1.1 spark-shell(交互窗口模式)
運行Spark-shell需要指向申請資源的standalone spark集群信息,其參數為MASTER,還可以指定executor及driver的內存大小。
sudo spark-shell --executor-memory 5g --driver-memory1g --master spark://192.168.180.216:7077
spark-shell啟動完後,可以在交互窗口中輸入Scala命令,進行操作,其中spark-shell已經默認生成sc對象,可以用:
val user_rdd1 = sc.textFile(inputpath, 10)
讀取數據資源等。
1.2 spark-shell(腳本運行模式)
上面方法需要在交互窗口中一條一條的輸入scala程序;將scala程序保存在test.scala文件中,可以通過以下命令一次運行該文件中的程序代碼:
sudo spark-shell --executor-memory 5g --driver-memory1g --master spark//192.168.180.216:7077 < test.scala
運行後會自動進入spark-shell交互窗口並且運行test.scala中的程序,運行完成後,會自動退出spark-shell。
如果程序退出終端後,Linux終端失效,可以試試:stty echo 命令
1.3 spark-submit (程序部署)
Spark提供了一個容易上手的應用程序部署工具bin/spark-submit,可以完成Spark應用程序在local、Standalone、YARN、Mesos上的快捷部署。可以指定集群資源master,executor/ driver的內存資源等。
sudo spark-submit --masterspark://192.168.180.216:7077 --executor-memory 5g --class mypackage.test workcount.jar hdfs://192.168.180.79:9000/user/input.txt
workcount .scala 代碼打包workcount.jar,並將文件需要上傳到spark的安裝目錄下面;
hdfs//192.168.180.79:9000/user/input.txt為輸入參數;

⑽ python的機器學習可以放到spark上面跑嗎

可以的。python編寫好的演算法,或者擴展庫的,比如sklearn都可以在spark上跑。直接使用spark的mllib也是可以的,大部分演算法都有。

閱讀全文

與spark庫python相關的資料

熱點內容
cocos2dluapdf 瀏覽:491
假的加密鎖靠譜嗎 瀏覽:176
經營聖手伺服器怎麼調 瀏覽:749
arduino手機編程 瀏覽:481
西醫pdf下載 瀏覽:29
後浪電影學院pdf 瀏覽:813
程序員怎麼做到不被人嫉妒 瀏覽:669
cmd新建文件夾md命令 瀏覽:570
php數組中的數值排序 瀏覽:832
安卓手機怎麼避免小孩內購 瀏覽:171
聯想伺服器出現黃色嘆號怎麼辦 瀏覽:991
約翰編譯器製作教程 瀏覽:130
大地pdf 瀏覽:109
pdfplus 瀏覽:577
匯編O命令 瀏覽:970
plt轉pdf 瀏覽:364
魔獸60宏命令大全 瀏覽:479
php志願者網站源碼 瀏覽:875
貿易pdf 瀏覽:497
dbug命令 瀏覽:352