前回は、「BigQueryとは何か?BigQueryで何ができるのか?」を見てきました。

BigQueryを利用することにより、

・ビジネス情報を一元管理することができる
・リアルタイムデータの分析で高速なPDCAを回すことができる
・安価で使いたいときにいつでも利用できる

というメリットがあることがわかりました。

今回は、実際にBigQueryを使用するための準備「アカウントの作成方法」の手順をご紹介していきます。

BigQueryアカウントを作成しよう!

ここからは、アカウントの作成方法をご紹介していきます。
5分あれば登録を完了することができます。

まずは、下記URLからBigQueryのサイトへアクセスしてください。
https://cloud.google.com/bigquery?hl=ja

STEP1

「BigQuery無料トライアル」というボタンをクリックし、早速アカウントの作成を始めましょう。

BigQueryアカウント画面

STEP2

クリックいただいた次のページでは、ユーザーの個人情報の入力が必要です。
入力が完了しましたら、「続行」のボタンをクリックして次に進んでください。

BigQuery個人情報登録画面

次のページでは、お支払い方法の入力が必要となります。
クレジットカードの番号を入力する必要があるので少し戸惑ってしまうかもしれません・・・。

しかし、ご安心ください。

有料アカウントに手動でアップグレードしない限り、クレジットカードに課金されることはありません。

BigQuery個人情報登録画面

STEP3

お支払い情報の記入が完了しましたら、GoogleCloudPlatform(GCP)への登録が完了します。
※BigQueryは、GoogleCloudPlatform(GCP)の中の1つのプロダクトとなりますので、GCPへの登録が必要となります。

BigQueryアカウント画面

STEP4

GoogleCloudPlatform(GCP)の左にあるナビゲーションを下に下がっていくと、ビッグデータの項目中に「BigQuery」がありますので、そちらを選択してください。

GoogleCloudPlatform画面

STEP5

BigQueryの管理画面にログインすることができました。
これで、BigQueryを使うためのアカウントの準備は完了です。

BigQuery登録完了画面

BigQueryで設定しておきたい機能

思ったよりも、簡単に登録できたのではないでしょうか?

ここからは、BigQueryを使用する際に、ぜひ設定しておきたい便利な機能をご紹介していきます。

ショートカット機能

先程、BigQueryを探すのに、左のナビゲーションをかなり下の方までスクロールする必要がありましたよね・・・。

毎回、BigQueryを探すは大変なので、すぐに利用できるように「ショートカット機能」を利用しましょう!

BigQueryの横にある「ピン」のアイコンをクリックすることで、ナビゲーションの上部にもってくることが可能です。

BigQueryピンアイコン設定画面

クエリ上限金額設定

BigQueryは利用量に応じて課金されるサービスですが、初期設定では無制限に使える設定になっています。

気がついたら、Googleから高額な請求がきた・・・!!!

そんなことにならないように、BigQueryを使用する前に、クエリーで使用する上限金額を設定しておきましょう!

これさえ行っておけば、安心してBigQueryを利用することができます。

上限金額設定

GoogleCloudPlatformの左のナビゲーションにある「IAMと管理」をクリックしてください。

GCPには割り当てという設定があり、プロジェクトで使用できるGCPリソースの上限を設定することができます。

GoogleCloudPlatform「IAMと管理」

「AIMと管理」の項目の中に、「割当」という項目がありますので、「割当」をクリックしてください。

GoogleCloudPlatform「割当」

「割当」のうち、BigQueryでクエリするデータ量に関する項目は、下記2項目となります。
この2の種類の設定を行いましょう。

・Query usage / 日
・Query usage / 日 / ユーザ

GoogleCloudPlatform「割当」設定項目

「Query usage / 日」の項目をクリックし、詳細設定の画面に入ります。
この項目を設定しておくことで、意図せず膨大なリソースを使ってしまうことを軽減することができます。

GoogleCloudPlatform「割当」の設定

表示された項目をクリックし選択してください。
その後、上部の「割り当てを編集」をクリックしてください。

GoogleCloudPlatform「割当」の設定画面

上限の設定画面が表示されますので、設定してください。

GoogleCloudPlatform「割当」の設定画面

まずは、上限無制限になっているデフォルトの設定を解除するために、「unlimited」の項目をクリックし解除してください。
その上にある入力欄に、「1TB」と入力し、リクエストを送信します。

「1TB/日」で設定しておくと、USリージョンでは約500円($5)で上限となるので安心して使うことができます。

GoogleCloudPlatform「割当」の設定画面

リクエストを送信後下記のようなポップアップが表示されますので、「確認」を押して次に進んでください。

GoogleCloudPlatform「割当」の設定完了画面

同様に、「Query usage / 日 / ユーザ」の項目の設定も行ってください。

Googleのリソースを共有する場合に、1人のユーザのミスが他のユーザーのサービスの利用に悪影響を与えないようにすることができます。

GoogleCloudPlatform「割当」の設定画面

上限にあたるような利用状況になった場合、状況を見て少しずつ割当を引き上げていくのがオススメです。
高負荷がかかるときには、上限の設定に気をつけるようにしてくださいね。

BigQueryの料金体型

ここまでは、BigQueryのアカウントの設定についてご紹介してきましたが、「実際導入したらどれくらいの費用がかかるの?」と不安になる方もいらっしゃるかと思います。

ということで、ここからは、BigQueryの料金についてご紹介していきます。

1ヶ月あたりの料金(米国マルチリージョン)

「BigQueryを使う理由」の項目でも少しご紹介させていただきましたが、データの保存やデータの処理にかかる費用は下記となります。

10GBまでのデータの保存であれば、利用料は無料になります。
また、10GBを超えたとしても、1GBあたり2円という格安な料金になっています。

データの処理に関しても、1TB/月以内ならば利用料は無料になります。
かなり膨大なデータの処理を行わい限り、1TB/月を超えることはないのでは?と思います。
もしも、1TBを超えてしまったとしても、1TBあたり500円という格安な料金になっています。

BigQuery料金表(米国/マルチリージョン)

オペレーション 料金 詳細
アクティブストレージ $0.020/GB 毎月10GBまで無料
長期保存 $0.010/GB 毎月10GBまで無料
BigQuery Storage API $1.10/TB BigQuery Storage APIはGoogle Cloudの無料枠には含まれません。
ストリーミング挿入 $0.010/200MB 挿入に成功した行が課金対象になります。最小サイズは1KBで、各行が計算されます。
クエリ(オンデマンド) $5.00/TB 毎月1TBまで無料。
クエリ(1時間単位のFlex Slots) 100スロットあたり$4.00 追加のスロットは100スロット単位でご購入いただけます。
クエリ(月定額) $2,000/100slots 追加のスロットは100スロット単位でご購入いただけます。
クエリ(年定額) $1,700/100slots 追加のスロットは100スロット単位でご購入いただけます。
請求は月単位で行われます。

引用元: https://cloud.google.com/bigquery/pricing?hl=ja

無料のオペレーション

BigQueryで操作する全ての操作に料金がかかるわけではなく、データの読み込みやコピーなど、下記に該当する項目には料金は課金されないとのことです。

無料のオペレーション

無料のオペレーション 詳細
データの読み込み Cloud Storageから、またはローカルファイルからBigQueryへのデータの読み込みについては、課金されません。
ただし、Cloud Storageへのデータの保存に関しては課金されます。
BigQueryに読み込んだデータは、BigQueryのストレージの料金の対象となります。
ターゲットデータセットがUSマルチリージョンに配置されている場合、他のリージョンのCloud Storageバケットからの読み込み時にネットワーク(下り)トラフィックに対して課金されません。
データのコピー テーブルのコピーは無料ですが、新しいテーブルやコピーしたテーブルの保存には料金が発生します。
データのエクスポート BigQueryからCloud Storageにデータをエクスポートする場合、エクスポートオペレーションは無料ですが、Cloud Storageへのデータの保存では料金が発生します。
データセットの削除 データセットの削除は無料です。
メタデータオペレーション list、get、patch、update、deleteの呼び出しは無料です。
たとえば、データセットの一覧取得、データセットのアクセス制御リストの更新、テーブルの説明文の更新、データセット内のユーザーの定義関数の一覧取得などが該当します(ただし、これらに限定されません)。
疑似列の読み取り 次の擬似列のコンテンツに対するクエリは無料です。
_TABLE_SUFFIX:ワイルドカードテーブルにクエリを実行する場合に使用する
_PARTITIONDATE:取り込み時間パテーション分割テーブルにクエリを実行する場合に使用します
_PARTITIONTIME:取り込み時間パテーション分割テーブルにクエリを実行する場合に使用します
_FILE_NAME:外部データソースに基づくテーブルにクエリを実行する場合に使用します
メタテーブルの読み取り 次のメタテーブルのコンテンツに対するクエリは無料です
__PARTITIONS_SUMMARY__
パテーション分割テーブルまたは取り込み時間パーティション分割テーブルのパーティションに関するメタデータを取得する場合に使用します。
UDFの作成、置換、呼び出し 永続的なユーザー関数(UDF)の作成、置換、呼び出しは無料です。

引用元: https://cloud.google.com/bigquery/pricing?hl=ja

まとめ

これで、BigQueryを利用するための準備が完了しました。
次の回では、実際にBigQueryにデータをアップロードする方法をご紹介していきます。

いよいよ、実際にBigQueryを使用していくことになります。
次回も、ぜひお付き合いただければ幸いです。