概要
Cloud ConsoleとCloud Shellを利用して、GCS上のTSVファイルをソースとしてBigQueryテーブルを作成します。
Cloud ConsoleはCSVファイルであればGCSインポートでテーブル作成できるのですが、TSVファイルには対応していないためCloud Shellでの転送処理が必要となります。
BQテーブルの作成
Cloud Consoleでスキーマを定義し、空のテーブルを作成します。
スキーマの定義
インポートするデータのスキーマを定義します。ここではテキストとして定義しています。
uid:STRING,gender:STRING,age:INTEGER
このテキストをテーブル作成画面のスキーマの項目で[テキストとして編集]のトグルをONにして、貼り付けます。
GCSから転送
GCSのTSVファイルをソースとして、前述の空のテーブルに対してデータを転送します。
bq load --source_format=CSV --encoding=UTF-8 --field_delimiter="\t" datasetName.tableName gs://bukectName/fileName.tsv
転送でエラーが発生した場合
スキーマの定義が誤っている場合などエラーが発生した場合には、スキーマと実際のデータを比較することになります。
ただファイル容量が大きい場合にはローカルで確認するのは不便なため、例えばCloud Dataprepでプレビューしながら確認すると良いと思います。