• No : 773
  • 公開日時 : 2024/08/29 12:36
  • 更新日時 : 2024/10/09 21:24
  • 印刷

サイズの大きなファイルをgsutilコマンドで高速アップロードする方法

回答

gsutilのparallel-composite-uploadsを使用します。
大きなファイルを複数に分割してアップロードし、最後にクラウドで結合されます。
parallel_composite_upload_threshold のオプションで指定したサイズ以上のファイルを分割してアップロードします。
 
詳細は次のURLをご参照ください。
▼cp - Copy files and objects>Parallel Composite Uploads(Google社)
https://cloud.google.com/storage/docs/gsutil/commands/cp#parallel-composite-uploads
※弊社管理外のサイトです。

■準備
コンパイル済みのcrcmodをインストールする必要があります。
CentOSの場合

$ sudo yum install gcc python-devel python-setuptools redhat-rpm-config $ sudo pip uninstall crcmod $ sudo pip install -U crcmod


その他のOSの手順は次のURLをご参照ください。
▼CRC32C と crcmod のインストール(Google社)
https://cloud.google.com/storage/docs/gsutil/addlhelp/CRC32CandInstallingcrcmod
※弊社管理外のサイトです。

■実行例

$ gsutil -o GSUtil:parallel_composite_upload_threshold=150M cp 10GBfile gs://{bucket name}
 ※1行で入力します。
 
 
■結果例
IDCFクラウドからクラウドストレージへ10GByteのファイルをアップロードしたときのparallel-composite-uploads を指定した場合と未指定の場合の比較

※上記の数値は保証するものではありません。計測環境によっても異なります。
お客様で検証の上、ご利用ください。

注意事項)
ストレージクラスが Nearline と Coldlineの場合は早期削除料金が発生してしまうため推奨できません。