如何解决如何使用参数将.py文件传递到parallel.futures.executor.submit并在Spark中运行脚本
我的任务是将包含func(s)的.py文件传入我的脚本(而不是导入),并在Spark中同时运行作业,我使用current.futures库 下面是我的示例代码。定义DF中的行数是def
from pyspark.sql import SparkSession as sc
from concurrent.futures import ProcessPoolExecutor as PPE,ThreadPoolExecutor as TPE
db = 'db_staging'
table_list = ['batch','source','country','currency']
if __name__ == '__main__':
spark = sc.builder.appName('pro').enableHiveSupport().getOrCreate()
def get_count(table):
df = spark.sql("select * from %s.%s" %(db,table))
ct = df.count()
future_list = []
with PPE() as exe:
for table in table_list:
future_list.append(exe.submit(get_count,table))
for future in future_list:
print(future)
我在def以下移动到了位于'C:/ Users / admin / script /'上的.py文件
def get_count(table):
df = spark.sql("select * from %s.%s" %(db,table))
ct = df.count()
如何将.py文件和一些参数(args)传递到 exe.submit ,最后在 Spark 中运行?一种可能的方法是使用 subprocess 库。我该如何实现?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。