1

複数のcsvファイルをロードする場合、Big Queryはエラーをどのように処理しますか?

bq load --max_bad_record = 30 dbname.finalsep20xyz gs://sep20new/abc.csv.gz、gs://sep20new/xyzcsv.gz

バッチジョブには、予想される列の数が一致しないためにロードに失敗する可能性のあるファイルがいくつかあります。ただし、残りのファイルをロードしたいと思います。ファイルabc.csvが失敗した場合xyz.csvファイルは実行されますか?または、ジョブ全体が失敗し、レコードが挿入されませんか?

ダミーレコードを試してみましたが、複数のファイルのエラーがどのように処理されるかを最終的に見つけることができませんでした。

4

1 に答える 1

3

ロードはアトミックです。すべてのファイルがコミットされるか、ファイルがコミットされません。負荷を個別に完了させたい場合は、負荷を複数のジョブに分割できます。別の方法は、max_bad_recordsをはるかに高い値に設定することです。

インポートの処理方法に柔軟性があるため、より多くのファイルでより少ないジョブを起動することをお勧めします。とは言うものの、最近のロードクォータの変更は、より多くの同時ロードジョブを送信できることを意味し、さらに高いクォータが間もなく計画されています。

また、BQの状態を変更するすべてのBigQueryアクション(ロード、コピー、宛先テーブルを使用したクエリ)はアトミックであることに注意してください。アトミックではない唯一のジョブタイプはextractです。これは、エクスポートされたデータの一部を書き出した後に失敗する可能性があるためです。

于 2012-09-20T14:25:25.760 に答える