2016-12-20 2 views
1

私たちのデータフロージョブは、対象のファイルを含むGCSマルチリージョナルバケットから読み込みます。これらのファイルもアーカイブバケットに移動されるため、GCSリスト操作では移動したファイルが返されることがあります(最終的には一貫した操作であることが予想されます)。GCSバケットリストの最終的な一貫性に対処する

FileBasedSourceが「ゴースト」ファイルを読み込もうとすると、残念なことに私たちの仕事が爆発します。 GoogleのDataflow SDKとApache Beamの両方で、GCSファイルを最後に開くメソッド(FileBasedSourcecreateReaderstartImpl)がオーバーライドできないようです。

ファイルを移動しない以外は、この問題を回避するための推奨事項はありますか?このStack Overflow questionは、他の人が同様の問題を経験していることを示していますが、応答が「期待どおりに爆発した」ようです。

+0

私はGCSオブジェクトのリストがその後非常に一貫しているため、私の答えを編集しました。 – jkff

答えて

2

現在、Google Cloud Storageのオブジェクトのリスト操作はstrongly consistentであるため、元の問題はもう適用されません。

最終的に一貫性のあるS3などのファイルシステムを使用する場合でも適用されます。この問題を追跡するには、BEAM JIRAを参照してください。

+0

ありがとうございます@jkff – ptf

+0

現在のステータスを更新していただきありがとうございます – ptf

関連する問題