scala - 如何在 Spark-Submit 应用程序中执行 S3-dist-cp 命令

标签 scala apache-spark bigdata spark-submit s3distcp

我有一个 jar 文件,该文件正在 jar 中的方法中提供给 Spark-submit.With 。我正在尝试做一个

Import sys.process._
s3-dist-cp —src hdfs:///tasks/ —dest s3://<destination-bucket>

我还在所有从属设备上安装了 s3-dist-cp 以及主设备。 应用程序启动并成功,没有错误,但没有将数据移动到 S3。

最佳答案

这不是对您问题的正确直接回答,但我使用了 hadoop distcp ( https://hadoop.apache.org/docs/current/hadoop-distcp/DistCp.html ),并且它成功地移动了数据。在我的测试中,与spark.write.parquet(path)相比,它相当慢(当计算使用hadoop distcp所需的额外写入hdfs所需的时间时)。不过,我也对你问题的答案很感兴趣;我认为考虑到亚马逊所做的额外优化,s3-dist-cp 可能会更快。

关于scala - 如何在 Spark-Submit 应用程序中执行 S3-dist-cp 命令,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53878406/

相关文章:

python - Airflow - 无法导入 Spark 提供程序 - 程序包 : name 'client' is not defined

hadoop - Yarn 上保留的内存是什么

Hadoop:如何将 Reduce 的输出收集到 Java HashMap 中

hadoop - Hadoop 中的容错

hadoop - 在Hadoop环境中,谁在HDFS中创建数据拆分?

mysql - 光滑的表未保存在数据库中,没有错误

algorithm - 置换函数调用

scala - SBT 未解决 Squeryl 依赖关系

scala - 如何在 Scala 中定义 @interface?

apache-spark - 线性回归 scala.MatchError :