如何在EMR 5.x中的pyspark shell / pyspark脚本中运行“s3-dist-cp”命令

时间:2017-01-23 12:49:56

标签: pyspark amazon-emr s3distcp

我在pyspark脚本中运行s3-dist-cp“命令时出现了一些问题,因为我需要从s3到hdfs的一些数据移动以提高性能。所以我在这里分享这个。

2 个答案:

答案 0 :(得分:1)

Import os

os.system("/usr/bin/s3-dist-cp --src=s3://aiqdatabucket/aiq-inputfiles/de_pulse_ip/latest/ --dest=/de_pulse/  --groupBy='.*(additional).*'  --targetSize=64 --outputCodec=none")

注意: - 请确保您提供s3-dist-cp的完整路径(/ usr / bin / s3-dist-cp)

另外,我认为我们可以使用子进程。

答案 1 :(得分:0)

如果您正在运行pyspark应用程序,则必须先停止spark应用程序。 s3-dist-cp将挂起,因为pyspark应用程序正在阻止。

spark.stop()  # spark context
os.system("/usr/bin/s3-dist-cp ...")