私はPythonスクリプトを実行しており、os
ライブラリを使用してgsutil
コマンドを実行しています。これは通常、Windowsのコマンドプロンプトで実行されます。私は自分のローカルコンピュータ上のいくつかのファイルがあると私はGoogle Bucket
に入れたいので、私は:このgsutilの「並列合成アップロード」に関する警告はどうすればよいですか?
==>注:
輸入OS
command = 'gsutil -m cp myfile.csv gs://my/bucket/myfile.csv' os.system(command)
を私のようなメッセージが表示されます:1つまたは複数の大きなファイルをアップロードしていますが、パラレルコンポジットアップロードを有効にすると大幅に高速に実行されます。この 機能は、 設定ファイルの "parallel_composite_upload_threshold"値を編集することで有効にすることができます。ただし、大容量のファイルを としてアップロードすると、複合オブジェクト https://cloud.google.com/storage/docs/composite-objects 'がアップロードされます。 は、このようなオブジェクトをダウンロードするユーザーには コンパイル済みcrcmodがインストールされている必要があります(「gsutil help crcmod」を参照)。 。これは、 コンパイルされたcrcmodがないため、コンポジットオブジェクトのチェックサムを計算すると となり、gsutilはコンポジットオブジェクトのダウンロードを無効にします。
私は、実際には何を示唆しているかは関係ありませんが、このファイルを隠すか、.botoファイルが見つかりません。私は何をすべきか?これを行うには
gsutil -o GSUtil:parallel_composite_upload_threshold=150M cp bigfile gs://your-bucket
:
あなたはファイル名を厳密に管理していないと、セキュリティ違反で使用することもできます(具体的な例を提供し、作成されたファイルをアップロードしようとすると'touch '$(rm -rf〜).csv''はうまくいかないでしょう)。 'subprocess.Popen'や' shell = True'を使わない派生物を使う方がずっと安全で、コマンドラインの各部分を別々のリスト要素として渡す方がずっと安全です。 –