gpt4 book ai didi

python - 如何将一个 py 文件中创建的 SparkContext 导入/检查到另一个 py 文件?

转载 作者:太空宇宙 更新时间:2023-11-03 15:48:55 26 4
gpt4 key购买 nike

我是 Spark 新手。目前我正在尝试使用 Pyspark 提取 Facebook API 数据。我正在调用的主文件中创建sparkcontext。我的文件夹中有多个 .py 文件,当我执行 Spark 提交主程序时,所有这些文件都会在其中执行。

当程序转到其他.py文件时,我想检查我创建的sparkcontext是否存在。如果是,我想使用该 SparkContext 来执行 other.py 文件。任何人都可以帮我解决这个问题。如果我有什么地方错了。请提出最好的想法。

示例:这不是我的完整代码,只是显示了我的小代码问题

# Calling file name: main_file.py        
def fb_calling():
import file2
file2.fb_generaldata()

f __name__ == "__main__":
conf = SparkConf()
conf.setAppName('fb_sapp')
conf.setMaster('yarn-client')
sc = SparkContext(conf=conf)
fb_calling()

# File:file2.py
def fb_generaldata():
sc.parallelize('path')

我的问题是我想使用在 main_file.py 中创建的 SparkContext 在 file2.py 中使用你能告诉我这怎么可能吗?如果我走错了路,你能正确引导我吗?我对 Spark 完全陌生。谢谢您的帮助

最佳答案

您可以将sparkContex作为参数传递给file2.py中的函数,如下所示

# File:file2.py
def fb_generaldata(sc):
sc.parallelize('path')

# main_file.py
import file2

if __name__ == "__main__":
conf = SparkConf()
conf.setAppName('fb_sapp')
conf.setMaster('yarn-client')
sc = SparkContext(conf=conf)
file2.fb_generaldata(sc)

根据您运行它的方式,您可能需要在导入之前将文件发送给您的工作人员,您可以使用 sc.addPyFile("file2.py") 来做到这一点或使用 py-files Spark-submit 命令中的参数。

关于python - 如何将一个 py 文件中创建的 SparkContext 导入/检查到另一个 py 文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41499061/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com