BigQueryのデータマートからスキーマ情報をデータ型と同時に取得する

URL
bq_schema
Created
2021/1/31 8:17
Tags
Pythonで作ったデータセットをBigQueryに上げる際に、デフォルトだとデータ型が合わない問題が発生した。
INTやFLOATで数値計算させたいのに、そのままだとSTRINGの文字情報になってしまうため、スキーマの情報を設定する必要がある。
Pythonでスキーマを指定する場合、数個だけのカラムなら手打ちでもなんとかなるんだけど、数十数百となると、ちとキツイ。
そこで、BigQueryの既存のデータマートを参考にして、カラム名とデータ型を同時に取得したのでメモ。
 
GCPのページから、Cloud Shellのコンソールを起動する。
 
コンソール画面に、以下のクエリを入力すると、対象テーブルのカラム名とデータ型を取得することができる。
Plain Text
 
コンソール起動時の位置には、初めの位置がプロジェクトになっている場合があるので注意する。
その場合には、プロジェクトIDは飛ばして以下のクエリでいける。
Plain Text
 
デフォルトだとテキスト形式で返ってくるが、オプションでJSON形式でも取得可能。
Plain Text