我有關於CDH hdfs的數據,我想將其移至Amazon S3存儲桶,以便我可以在AWS EMR而不是CDH上運行代碼。 如何安全快速地移動它?將數據從Cloudera移動到Amazon S3存儲桶
我可以用s3a命令或其他有效的方法來做到嗎?
我有關於CDH hdfs的數據,我想將其移至Amazon S3存儲桶,以便我可以在AWS EMR而不是CDH上運行代碼。 如何安全快速地移動它?將數據從Cloudera移動到Amazon S3存儲桶
我可以用s3a命令或其他有效的方法來做到嗎?
我使用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/
我已經試過這個命令,它給了我。 錯誤tools.distcp.Distcp:無效拒絕 java.net.connectException:連接被拒絕。 任何解決方法呢? –
當您運行命令的datanode無法訪問S3時,通常會發生這種情況。您需要確保可以從運行此命令的節點訪問s3。 – Pushkin
您可以使用AWS'S3 cp'任何文件複製到一個S3桶。 –
我試過使用aws S3 cp,但是在某些時候複製停止了。 –
如果由於某種原因傳輸中斷,您可以始終使用'aws s3 sync'代替。 –