状況: データロードサービスを使用して、s3のディレクトリから約1TBのjsonファイルを取り込みます。これらのファイルをバッチでingestionディレクトリにロードして、ローディングサービスが圧倒されないようにします。私たちは、boto3クライアントのコピーメソッドを使用するローカルのpythonスクリプトを使ってそのバッチ処理を行っています。s3の中で鍵をコピーするときにboto3はGETしてからPUTを行いますか?
import boto3
s3 = boto3.resource('s3')
copy_source = {
'Bucket': 'mybucket',
'Key': 'mykey'
}
s3.meta.client.copy(copy_source, 'otherbucket', 'otherkey')
boto3's copy methodを使用して、クライアントがキーに関連付けられたファイルをダウンロードして、新しいotherbucket/otherkey
場所にPUTをやっていることを考える何らかの理由がある:ここではboto3のドキュメントからのサンプルがですか?
s3での操作には料金がかかりますので、私は基本的にそれらの料金を請求させないようにしています。