GCPにあるDWHサービスのbigqueryに、jsonlのファイルをインポートしてテーブル作成する方法を記載します。
※本記事のポイントは下記[前提]のような「リストがある場合のスキーマの設定方法」です。スキーマを「自動検出」として問題無なさそうであれば、(ファイル形式の違いだけで)CSV等のインポートと方法は同じです。
[前提] そもそもjsonlとは?
「jsonl」は「json lines」の略であり、下記のように「辞書型データを改行区切りにしている形」のファイルです。下記のように「値としてリストを設定」したり、また「そのリストに辞書型データを入れる形」のようなものでもBQではそのままテーブル化できます。
{"a": 1, "b": [{"b_a": 2, "b_c": 3}, {"b_a": 4, "b_c": 5}]}
{"a": 10, "b": [{"b_a": 20, "b_c": 30}]}
[BigQuery] インポート方法
例として、上記[前提]のファイルをインポートしてみます。
1.BQを開き、作成先データセットの下図赤枠より「テーブル作成」をクリック
2.ソースにインポート対象のファイルを指定し、ファイル形式を「JSONL」(下図赤枠)にする。
3.スキーマでは(上記[前提]データの場合)下図のように設定する。
(下図赤枠がポイント)
4.その他の設定(テーブル名等)は、(CSV等の時と同じように)よしなに設定し「テーブル作成」をクリック
5.テーブル作成完了