2017-07-20 9 views

答えて

2

技術的には可能ですが、Dataflowを使用してファイルをピックアップし、gustilのラッパーとしてではなく新しいバケットに移動する方が良いでしょう。

必要なクラスはbeam.io.gcsio.GcsIO()でなければならず、必要な場所にファイルを持ち上げて置くことができるはずです。

+0

これは、バケット間を移動するだけでなく、ローカルワーカーにダウンロードするために使用できますか?私はgoogle-cloud-storageのpythonモジュールを試してみました。大きな(3GB)のオブジェクトの場合はgsutilと比べてうまく動作しません。 – bw4sz

+0

はい、そのメソッド呼び出しは、ストレージから渡されたオブジェクトと実行中のデータフローワーカーのローカルインスタンスにロードされます。 より大きいオブジェクトを推奨すると、20 MBを超えると、そのオブジェクトを実行可能なバンドルに刻み込み、そのようなパフォーマンスを向上させるようにそのオブジェクトを直列化します。これは、あなたが扱っているオブジェクトを分解できると仮定しています。 – bR3nD4n

+0

うん、ちょうどちょっと丸いが、チャンクに取り組んでいる。チャンクを作成するには、ファイルをダウンロードしてから、チャンクにデータフローを再アップロードして実行する必要があります。ローカルダウンロードの構文に関するサンプルコードを1行与えることができます。私が見るものは、やや簡潔です。https://beam.apache.org/documentation/sdks/pydoc/0.6.0/_modules/apache_beam/io/gcp /gcsio.html – bw4sz

関連する問題