パブリックサーバ(〜0.5TB、multi-part here)にlarge datasetがあります。これは自分自身のs3バケットにコピーしたいものです。 aws s3 cp
は、S3バケットに基づくローカルファイルまたはファイルのみのようですか?AWS S3リモートからのバケットへのコピー
どのように私はそのファイル(単一または複数の部分)をS3にコピーできますか? AWS CLIを使用することはできますか?何か別のものが必要ですか?
パブリックサーバ(〜0.5TB、multi-part here)にlarge datasetがあります。これは自分自身のs3バケットにコピーしたいものです。 aws s3 cp
は、S3バケットに基づくローカルファイルまたはファイルのみのようですか?AWS S3リモートからのバケットへのコピー
どのように私はそのファイル(単一または複数の部分)をS3にコピーできますか? AWS CLIを使用することはできますか?何か別のものが必要ですか?
遠隔地からS3に直接アップロードする方法はありません。しかし、あなたはリモートファイルの内容をあなたのマシンにストリーミングしてからS3までストリーミングすることができます。これは、0.5TBのデータ全体をダウンロードしたことを意味しますが、コンピュータは一度にそのデータのほんの一部をメモリに保持します(ディスクには保存されません)。ここでは、JavaScriptで単純な実装です:
const request = require('request')
const async = require('async')
const AWS = require('aws-sdk')
const s3 = new AWS.S3()
const Bucket = 'nyu_depth_v2'
const baseUrl = 'http://horatio.cs.nyu.edu/mit/silberman/nyu_depth_v2/'
const parallelLimit = 5
const parts = [
'basements.zip',
'bathrooms_part1.zip',
'bathrooms_part2.zip',
'bathrooms_part3.zip',
'bathrooms_part4.zip',
'bedrooms_part1.zip',
'bedrooms_part2.zip',
'bedrooms_part3.zip',
'bedrooms_part4.zip',
'bedrooms_part5.zip',
'bedrooms_part6.zip',
'bedrooms_part7.zip',
'bookstore_part1.zip',
'bookstore_part2.zip',
'bookstore_part3.zip',
'cafe.zip',
'classrooms.zip',
'dining_rooms_part1.zip',
'dining_rooms_part2.zip',
'furniture_stores.zip',
'home_offices.zip',
'kitchens_part1.zip',
'kitchens_part2.zip',
'kitchens_part3.zip',
'libraries.zip',
'living_rooms_part1.zip',
'living_rooms_part2.zip',
'living_rooms_part3.zip',
'living_rooms_part4.zip',
'misc_part1.zip',
'misc_part2.zip',
'office_kitchens.zip',
'offices_part1.zip',
'offices_part2.zip',
'playrooms.zip',
'reception_rooms.zip',
'studies.zip',
'study_rooms.zip'
]
async.eachLimit(parts, parallelLimit, (Key, cb) => {
s3.upload({
Key,
Bucket,
Body: request(baseUrl + Key)
}, cb)
}, (err) => {
if (err) console.error(err)
else console.log('Done')
})
これはnode.jsで実行するスクリプトだと思いますか? –
そう...あなたが疑問にデータセットを言っている...右S3上にありませんが、あなたはそれをダウンロードし、S3に保存したいですか? –
@ Michael-sqlbotまったく –
しかし、私はEC2インスタンスから実行しているので、EC2インスタンスにすべてをダウンロードしてS3にアップロードしたくないので、S3に直接ロードすることは私が探しているものですために。 –