我有关于CDH hdfs的数据,我想将其移至Amazon S3存储桶,因此我可以在AWS EMR而不是CDH上运行代码。 如何安全快速地移动它?
我可以使用s3a命令或任何其他有效方法来执行此操作吗?
答案 0 :(得分:0)
我使用hdfs distcp将数据从S3复制到hdfs。它也支持反之亦然,所以也适用于你的情况。 因为它在内部使用map reduce并且非常快速地进行并行处理。我为一组日期创建了一个运行此命令的脚本,然后在后台模式下使用nohup运行它。 命令语法是:
hadoop distcp -Dfs.s3n.awsAccessKeyId=$S3NKEYID - Dfs.s3n.awsSecretAccessKey=$S3NKEY s3n://$COPYFROMENV/$TABLE_PATH/$TABLE/$PARTITION_PATH hdfs://$COPYTOENV/$TABLE_PATH/$TABLE/