1

APIを介してローカルファイルをBigQueryに読み込もうとしていますが、失敗します。ファイルサイズは98MBで、500万行を少し超えています。過去に問題なく、同じ行数とわずかに大きいファイルサイズのテーブルをロードしたことに注意してください。

私が使用しているコードは、他のいくつかのテーブルをアップロードするために正常に使用したAPIドキュメントのコードとまったく同じです。私が得るエラーは次のとおりです。

Errors:
Line:2243530, Too few columns: expected 5 column(s) but got 3 column(s)
Too many errors encountered. Limit is: 0.
Job ID: job_6464fc24a4414ae285d1334de924f12d
Start Time: 9:38am, 7 Aug 2012
End Time: 9:38am, 7 Aug 2012
Destination Table: 387047224813:pos_dw_api.test
Source URI: uploaded file
Schema:
  tbId: INTEGER
  hdId: INTEGER
  vtId: STRING
  prId: INTEGER
  pff: INTEGER

同じファイルがCloudStorage(dw_tests / TestCSV / test.csv)から問題なく読み込まれるため、CloudStorageからも失敗するため、列が少ない1行について報告された問題ではないことに注意してください。行の形式は正しいです。

次のジョブにも同じ問題があります。唯一の違いは、テーブル名とスキーマ内のフィールドの名前が異なることです(ただし、データファイル、フィールド、およびタイプは同じです)。それらの試みで、それは問題のある別の行を主張しました:

Line:4288253, Too few columns: expected 5 column(s) but got 4 column(s)

仕事は次のとおりです。

job_cbe54015b5304785b874baafd9c7e82e   load       FAILURE   07 Aug 08:45:23   0:00:34
job_f634cbb0a26f4404b6d7b442b9fca39c   load       FAILURE   06 Aug 16:35:28   0:00:30
job_346fdf250ae44b618633ad505d793fd1   load       FAILURE   06 Aug 16:30:13   0:00:34

Pythonスクリプトが返すエラーは次のとおりです。

{'status': '503', 'content-length': '177', 'expires': 'Fri, 01 Jan 1990 00:00:00 GMT', 'server': 'HTTP Upload Server Built on Jul 27 2012 15:58:36 (1343429916)', 'pragma': 'no-cache', 'cache-control': 'no-cache, no-store, must-revalidate', 'date': 'Tue, 07 Aug 2012 08:36:40 GMT', 'content-type': 'application/json'}

{
 "error": {
  "errors": [
   {
    "domain": "global",
    "reason": "backendError",
    "message": "Backend Error"
   }
  ],
  "code": 503,
  "message": "Backend Error"
 }
}

これは、BigQueryに問題がある可能性があるようです。この問題を解決するにはどうすればよいですか?

4

1 に答える 1

0

このインポート用の一時ファイルがまだ残っていたので、インポートしようとしたファイルをチェックアウトすることができました。jobjob_6464fc24a4414ae285d1334de924f12dの場合、最後の行は次のとおりです。

222,320828,bot,2,0
222,320829,bot,4,3
222,320829,

ある時点で入力ファイルの一部を削除したようです... 入力仕様では、MD5ハッシュは 58eb7c2954ddfa96d109fa1c60663293 である必要がありますが、データのハッシュは 297f958bcf94959eae49bee32cc3ac​​dc であり、ファイル サイズは 98921024 である必要がありますが、83886080 バイトしかありません。

なぜこれが起こっているのかを調べます。それまでの間、 Google Storageを介したインポートは、はるかに単純なパスを使用するため、問題ないはずです。

于 2012-08-07T18:32:56.300 に答える