国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

spark-shell(pyspark)單機(jī)模式使用和編寫?yīng)毩?yīng)用程序

這篇具有很好參考價(jià)值的文章主要介紹了spark-shell(pyspark)單機(jī)模式使用和編寫?yīng)毩?yīng)用程序。希望對(duì)大家有所幫助。如果存在錯(cuò)誤或未考慮完全的地方,請(qǐng)大家不吝賜教,您也可以點(diǎn)擊"舉報(bào)違法"按鈕提交疑問。

spark有四種部署方式:Local,Standalone,Spark on Mesos,Spark on yarn。第一個(gè)為單機(jī)模式,后三個(gè)為集群模式。

spark-shell支持python和scala,這里使用python。

1.啟動(dòng)pyspark環(huán)境

在spark安裝目錄下

./bin/pyspark

進(jìn)入之后,如下圖:?

pyspark的shell,spark,大數(shù)據(jù)2.編寫程序

新建代碼文件WordCount.py,并編寫程序

touch WordCount.py
vim WordCount.py
from pyspark import SparkConf, SparkContext
# 使用本地模式啟動(dòng)
conf = SparkConf().setMaster("local").setAppName("My App")
# 生成一個(gè)SparkContext對(duì)象
sc = SparkContext(conf=conf)
# 設(shè)置文件路徑
logFile = "file:///opt/servers/spark/README.md"
# 讀取README.md文件生成的RDD
logData = sc.textFile(logFile, 2).cache()
# 分別統(tǒng)計(jì)RDD元素中包含字母a和b的行數(shù)
numAS = logData.filter(lambda line: 'a' in line).count()
numBs = logData.filter(lambda line: 'b' in line).count()
# 打印輸出結(jié)果
print('Lines with a: %s, Lines with b: %s' % (numAS, numBs))

運(yùn)行代碼:python3 WordCount.py

如果報(bào)如下錯(cuò)誤:

python3 WordCount.py
Traceback (most recent call last):
? File "WordCount.py", line 1, in <module>
? ? from pyspark import SparkConf, SparkContext
ModuleNotFoundError: No module named 'pyspark'
說(shuō)明沒有pyspark模塊。

進(jìn)入python安裝目錄下的lib/site-packages目錄下,使用pip下載安裝pyspark,這里使用國(guó)內(nèi)清華大學(xué)鏡像網(wǎng)站。

pip install pyspark -i http://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.tsinghua.edu.cn

下載一個(gè)鏡像,中間出了好幾個(gè)問題,被我記錄在

pip安裝更新第三方庫(kù)報(bào)錯(cuò)解決-CSDN博客

安裝pyspark庫(kù)成功后,重新運(yùn)行代碼,然后還是報(bào)錯(cuò)

Setting default log level to "WARN".
To adjust logging level use sc.setLogLevel(newLevel). For SparkR, use setLogLevel(newLevel).
/usr/local/python3/lib/python3.7/site-packages/pyspark/context.py:317: FutureWarning: Python 3.7 support is deprecated in Spark 3.4.
? warnings.warn("Python 3.7 support is deprecated in Spark 3.4.", FutureWarning)
Traceback (most recent call last):
? File "WordCount.py", line 11, in <module>
? ? numAS = logData.filter(lambda line: 'a' in line).count()
? File "/usr/local/python3/lib/python3.7/site-packages/pyspark/rdd.py", line 2297, in count
? ? return self.mapPartitions(lambda i: [sum(1 for _ in i)]).sum()
? File "/usr/local/python3/lib/python3.7/site-packages/pyspark/rdd.py", line 2273, in sum
? ? 0, operator.add
? File "/usr/local/python3/lib/python3.7/site-packages/pyspark/rdd.py", line 2025, in fold
? ? vals = self.mapPartitions(func).collect()
? File "/usr/local/python3/lib/python3.7/site-packages/pyspark/rdd.py", line 1814, in collect
? ? sock_info = self.ctx._jvm.PythonRDD.collectAndServe(self._jrdd.rdd())
? File "/usr/local/python3/lib/python3.7/site-packages/pyspark/rdd.py", line 5442, in _jrdd
? ? self.ctx, self.func, self._prev_jrdd_deserializer, self._jrdd_deserializer, profiler
? File "/usr/local/python3/lib/python3.7/site-packages/pyspark/rdd.py", line 5250, in _wrap_function
? ? sc._javaAccumulator,
TypeError: 'JavaPackage' object is not callable

是因?yàn)閜yspark版本過(guò)高, 改成3.2.0版本的就可以了

pip3 install pyspark==3.2.0 -i http://pypi.tuna.tsinghua.edu.cn/simple/ --trusted-host pypi.tuna.tsinghua.edu.cn
Looking in indexes: http://pypi.tuna.tsinghua.edu.cn/simple/

再次運(yùn)行代碼,運(yùn)行結(jié)果如下:

pyspark的shell,spark,大數(shù)據(jù)

3.通過(guò)spark-submit運(yùn)行程序

進(jìn)入spark安裝目錄下的bin中

./spark-submit WordCound.py的絕對(duì)路徑
省略了<master-url>參數(shù),默認(rèn)本地模式

運(yùn)行結(jié)果如下 (部分截圖):

pyspark的shell,spark,大數(shù)據(jù)?在這個(gè)過(guò)程中產(chǎn)生了許多其他信息干擾,可以通過(guò)修改log4j的日志信息顯示級(jí)別,來(lái)消除干擾信息。

進(jìn)入spark安裝目錄下的配置文件夾conf

cp log4j2.properties.template log4j2.properties

我的是spark-3.3.3版本,日志文件名字為log4j2.properties.template,每個(gè)版本的日志文件名字不太一樣,具體的,要按照自己安裝的版本的日志文件來(lái),復(fù)制日志文件。

編輯日志文件

vim log4j2.properties

把顯示控制臺(tái)的信息改為error,保存并退出。

pyspark的shell,spark,大數(shù)據(jù)

再次使用spark-submit運(yùn)行python文件,結(jié)果如下

pyspark的shell,spark,大數(shù)據(jù)

已經(jīng)沒有其他信息干擾了。?文章來(lái)源地址http://www.zghlxwxcb.cn/news/detail-851305.html

到了這里,關(guān)于spark-shell(pyspark)單機(jī)模式使用和編寫?yīng)毩?yīng)用程序的文章就介紹完了。如果您還想了解更多內(nèi)容,請(qǐng)?jiān)谟疑辖撬阉鱐OY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來(lái)自互聯(lián)網(wǎng)用戶投稿,該文觀點(diǎn)僅代表作者本人,不代表本站立場(chǎng)。本站僅提供信息存儲(chǔ)空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請(qǐng)注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實(shí)不符,請(qǐng)點(diǎn)擊違法舉報(bào)進(jìn)行投訴反饋,一經(jīng)查實(shí),立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費(fèi)用

相關(guān)文章

  • Python大數(shù)據(jù)之PySpark(三)使用Python語(yǔ)言開發(fā)Spark程序代碼

    Python大數(shù)據(jù)之PySpark(三)使用Python語(yǔ)言開發(fā)Spark程序代碼

    Spark Standalone的PySpark的搭建----bin/pyspark --master spark://node1:7077 Spark StandaloneHA的搭建—Master的單點(diǎn)故障(node1,node2),zk的leader選舉機(jī)制,1-2min還原 【scala版本的交互式界面】bin/spark-shell --master xxx 【python版本交互式界面】bin/pyspark --master xxx 【提交任務(wù)】bin/spark-submit --master xxxx 【學(xué)

    2024年01月17日
    瀏覽(98)
  • 使用Pycharm運(yùn)行spark實(shí)例時(shí)沒有pyspark包(ModuleNotFoundError: No module named ‘py4j‘)

    使用Pycharm運(yùn)行spark實(shí)例時(shí)沒有pyspark包(ModuleNotFoundError: No module named ‘py4j‘)

    在安裝并配置pyspark,下載并打開Pycharm(專業(yè)版)后進(jìn)行spark實(shí)例操作(筆者以統(tǒng)計(jì)文件中的行數(shù)為例)時(shí),運(yùn)行程序后提示ModuleNotFoundError: No module named \\\'py4j\\\': 1.下載py4j包后下載pyspark包 打開新終端,在終端中輸入(若在pycharm中進(jìn)行下載可能導(dǎo)致下載失敗,這里指定使用清華

    2024年04月26日
    瀏覽(46)
  • Spark與PySpark(1.概述、框架、模塊)

    Spark與PySpark(1.概述、框架、模塊)

    目錄 1.Spark 概念 2. Hadoop和Spark的對(duì)比 3. Spark特點(diǎn) 3.1?運(yùn)行速度快 3.2 簡(jiǎn)單易用 3.3?通用性強(qiáng) 3.4?可以允許運(yùn)行在很多地方 4. Spark框架模塊 4.1 Spark Core 4.2?SparkSQL 4.3?SparkStreaming 4.4?MLlib 4.5?GraphX 5. Spark的運(yùn)行模式 5.1 本地模式(單機(jī)) Local運(yùn)行模式 5.2 Standalone模式(集群) 5.3 Hado

    2024年02月02日
    瀏覽(58)
  • PySpark-Spark SQL基本介紹

    PySpark-Spark SQL基本介紹

    目錄 Spark SQL基本介紹 Spark SQL特點(diǎn) Spark SQL與Hive的異同 Spark SQL的數(shù)據(jù)結(jié)構(gòu) Spark SQL的入門 創(chuàng)建SparkSession對(duì)象 DataFrame詳解 DataFrame基本介紹 ?DataFrame的構(gòu)建方式 RDD構(gòu)建DataFrame ?內(nèi)部初始化數(shù)據(jù)得到DataFrame schema總結(jié) 讀取外部文件得到DataFrame Text方式讀取 CSV方式讀取 JSON方式讀取 概

    2024年01月16日
    瀏覽(64)
  • spark、pyspark 常用的模版 demo 網(wǎng)址

    spark、pyspark 常用的模版 demo 網(wǎng)址

    1、我自己有時(shí)候用百度或者其他的搜索出來(lái)的spark 常用案例,質(zhì)量有的好有的差有時(shí)候就很煩。特地分享一個(gè)我常用的質(zhì)量高的網(wǎng)站地址

    2024年02月11日
    瀏覽(24)
  • 10-用PySpark建立第一個(gè)Spark RDD

    10-用PySpark建立第一個(gè)Spark RDD

    PySpark實(shí)戰(zhàn)筆記系列第一篇 Apache Spark的核心組件的基礎(chǔ)是RDD。所謂的RDD,即 彈性分布式數(shù)據(jù)集(Resiliennt Distributed Datasets) ,基于RDD可以實(shí)現(xiàn)Apache Spark各個(gè)組件在多個(gè)計(jì)算機(jī)組成的集群中進(jìn)行無(wú)縫集成,從而能夠在一個(gè)應(yīng)用程序中完成海量數(shù)據(jù)處理。 只讀不能修改 :只能通過(guò)

    2024年04月08日
    瀏覽(48)
  • 基于Headless構(gòu)建高可用spark+pyspark集群

    Headless 服務(wù)類型并不分配容器云虛擬 IP,而是直接暴露所屬 Pod 的 DNS 記錄。沒有默認(rèn)負(fù)載均衡器,可直接訪問 Pod IP 地址。因此,當(dāng)我們需要與集群內(nèi)真實(shí)的 Pod IP 地址進(jìn)行直接交互時(shí),Headless 服務(wù)就很有用。 其中Service的關(guān)鍵配置如下: clusterIP: None ,不讓其獲取clusterIP ,

    2024年02月06日
    瀏覽(31)
  • 使用策略模式實(shí)現(xiàn) Spring 分布式和單機(jī)限流

    我們可以使用策略模式來(lái)統(tǒng)一單機(jī)限流和分布式限流的實(shí)現(xiàn),提高代碼的可擴(kuò)展性和可維護(hù)性。 思路是定義一個(gè) RateLimitStrategy 接口,并分別實(shí)現(xiàn)單機(jī)限流策略 LocalRateLimitStrategy 和分布式限流策略 DistributedRateLimitStrategy 。在 AOP 切面中,根據(jù)配置決定使用哪種限流策略。 定義策略

    2024年04月24日
    瀏覽(29)
  • spark之a(chǎn)ction算子學(xué)習(xí)筆記(scala,pyspark雙語(yǔ)言)

    spark之a(chǎn)ction算子學(xué)習(xí)筆記(scala,pyspark雙語(yǔ)言)

    函數(shù)簽名:def collect(): Array[T] 功能說(shuō)明:收集每個(gè)分區(qū)數(shù)據(jù),以數(shù)組Array的形式封裝后發(fā)給driver。設(shè)置driver內(nèi)存:bin/spark-submit --driver-memory 10G(內(nèi)存大小) 注意:collect會(huì)把所有分區(qū)的數(shù)據(jù)全部拉取到driver端,如果數(shù)據(jù)量過(guò)大,可能內(nèi)存溢出。 圖1 結(jié)果 圖2 結(jié)果 返回RDD中元素的

    2024年02月04日
    瀏覽(33)
  • Linux系統(tǒng)下Spark的下載與安裝(pyspark運(yùn)行示例)

    Linux系統(tǒng)下Spark的下載與安裝(pyspark運(yùn)行示例)

    最近需要完成數(shù)據(jù)課程的作業(yè),因此實(shí)踐了一下如何安裝并配置好spark 由于我想要將hadoop和spark一起使用,因此必須確定好spark的版本 Spark和Hadoop版本對(duì)應(yīng)關(guān)系如下: Spark版本 Hadoop版本 2.4.x 2.7.x 3.0.x 3.2.x 可進(jìn)入終端查看Hadoop版本 我這里的版本是2.7.1,因此選擇下載2.4版本的

    2024年01月25日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請(qǐng)作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包