2017-05-04 10 views
0

Google BigQueryに200k + JSONファイルを読み込もうとしています。データセットは出店者データであり、一部の取引では1つのディスカウントバウチャーが使用され、1つ以上のバウチャーではバウチャーが使用されません。したがって、1つのファイルではREPEATABLEのフィールドもあれば、もう一方のフィールドではNULLのフィールドもあります。ロード時に可変構造のJSONをGoogle BigQueryに読み込み、繰り返しとnullを指定できる問題

私はエラーを取得しています:

BigQuery error in load operation: Error processing job 
'***': Invalid schema update. Field PromoPtn has changed mode from REPEATED to NULLABLE 

BigQueryの中でこれを処理する方法は?

+0

jsonファイルにスキーマの違いがあるようです。対処するトランザクションタイプごとにサンプルjson構造を提供してください。 – Vetri

+0

こんにちはJaison、実際には、すべての文書が150列までの異なるjson構造を持つ可能性があります。私はautodetectでスキーマをロードしようとしましたが、同じエラーが発生しています。その他の提案はありますか? –

答えて

0

ロードする入力jsonファイルは、Bigqueryテーブルのスキーマと一致していなければなりません(MUST)。失敗

ケース:BigQueryのテーブルではありませんJSONファイル内

  • 追加の列
  • 必須フィールドにNULL値のフィールド名
  • ケース差データ型の不一致

BigQuery allo以下の場合:

  • jsonファイルの列数が少ない(たとえば、テーブルのサイズは150ですが、ファイルのサイズは120です)。しかし、120列はすべてBigqueryテーブルになければならず、データ型とモードと一致しなければならない(MUST)。

あなたのjsonファイルを理解することをお勧めします。すべての可能な列を識別し、すべてのフィールドをNULLABLEとして定義する汎用スキーマを作成して、構造の違いにかかわらずすべてのファイルを読み込むことができます。

関連する問題