【BigQuery】CSVデータからテーブルを作成するステップを紹介します

20230730_BigQuery. クラウドプラットフォーム

BigQueryでは複数の方法でテーブルを作成できます。
今回はCSVデータからテーブルを作成する方法をご紹介します。

CSVデータを準備する

ここにトレーニングメニューに関するCSVデータがあります。
これをBigQueryに取り込んでいきましょう!

menu,repetition maximum,count,set,rest
ベンチプレス,10,10,3,1
ダンベルベンチプレス,12,12,3,1
インクラインダンベルベンチプレス,15,15,3,1
ベックフライ,20,20,3,1
ケーブルクロスオーバー,20,20,3,1

ちなみにこの日は胸の日メニューでした。

CSVファイルをアップロード

BigQueryのトップ画面からエクスプローラーの横にある追加を選択しましょう!

サイドバーが表示されました。
CSVファイルはデスクトップに置いてあるので、ローカルファイルをクリックします。

テーブルを作成する

上から順に記入していきましょう。

ソース

今回はCSVファイルなのでファイル形式をCSVに変更します。
そして参照からアップロードしたいCSVファイルを選びましょう。

送信先

ここではテーブルを作成する「プロジェクト」と「データセット」、新規作成する「テーブルの名前」を決めます。

今回はプロジェクトはデフォルトのまま(sql-book-384011)で、データセットはすでに作成されていたsampleを使いました。データセットはこの段階でも新規作成できます。

テーブル名はCSVファイルと一緒にしました。
テーブルタイプの変更はありません。

スキーマ

カラムの定義を決めましょう。私はこのように決めました。

  • フィールド名は小文字のスネークケース
  • 計算する可能性があるタイプはINTEGER型
  • NULLが入る可能性もあるためモードはすべてNULLABLE
  • 説明は日本語で詳しく記入

自動検出をクリックすると、CSVの情報から自動でフィールド名やタイプが入力できるのですが、意図しない名前や型が入る可能性があります。めんどうですが、自分で入力するのがおすすめです!

パーティションとクラスタの設定

パーティションに設定するカラムはないのでここは編集ありません。

詳細オプション

CSVファイルでは1行目がカラム情報でした。このままではカラム情報もテーブルに入ってしまうため、スキップするヘッダー行を「1」としました。

それ以外の変更は必要ありません。

すべての入力が終わったのでテーブル作成をクリックしましょう。

テーブルの確認

「作成されました」のメッセージが出たらテーブルの確認をしていきます。

スキーマは入力した情報と一致していますね。

データもCSVと同じで問題なさそうです。

SELECT
  menu,
  repetition_maximum,
  `count`,
  `set`,
  rest
FROM
  `sql-book-384011.sample.20230730_training_menu`

まとめ

業務でもCSVデータからテーブルを作成することはよくあるので覚えておくと便利でしょう。

今回躓くポイントがあるとすればCSVデータがスキーマのタイプと一致しない場合です。インポートする前に設定した型で本当にCSVデータが取り込めそうか確認すると良いでしょう。

これでいくらでもCSVデータからテーブルを作成できますね!