⇒【東証プライム企業も多数利用!】最先端のSNSマーケティングツール「Tofu Analytics」、「InstantWin」とは?
データ分析ツールの一種であるGoogle BigQueryを活用されている担当者も多いと思います。しかし、結局のところ「Googe BigQueryってなに?」「導入するとメリットあるの?」など疑問がある方も少なくないのではないでしょうか?
今回はそんなGooge BigQueryとはなにか、導入のメリットやデメリット、アカウントの開設方法、料金体系などについて解説します。
1.BigQuery とは
BigQuery とは Google Cloud (旧称 GCP) の分析用データベースです。BigQuery はフルマネージドサービスであり、そのため「従量課金 (初期投資がゼロ)」「フルマネージド (インフラ構築・管理が一切不要)」であることが最大の特徴です。
また自動的にスケーリング (拡張・縮小) するため、非常に高度なパフォーマンスを容易に得ることができます。
分析用データベース (あるいはデータウェアハウス等とも呼ばれます) として企業や官公庁、あるいは個人によって世界中で広く使われており、Google Cloud を特徴づける最大のプロダクトでもあります。同種の他社製品としては、Amazon Redshift や Snowflake、Azure Synapse Analytics が挙げられます。
BigQuery のデータは表形式で格納され、Google SQL (旧称 : Google 標準 SQL) という SQL や API 経由でデータを操作可能です。扱うデータは表形式ではありますが一般的な業務アプリ用の RDBMS とは異なり「列指向ストレージ」「キー制約の不在」「インデックスの不在 (一部機能として存在)」「非正規化のプラクティス」などの特性があります。
1-1.利用方法
BigQuery は Google Cloud のプロダクトです。利用開始するにはログイン用の Google アカウントと Google Cloud プロジェクトが必要です。
BigQuery を操作するインターフェイスはいくつか存在します。Web ブラウザで操作できる Web コンソール (Google Cloud コンソール)、 CLI コマンドラインである bq コマンドライン、Python など各言語用のクライアントライブラリなどです。
また、BigQuery 用の ODBC/JDBC ドライバも用意されています。
1-2.フルマネージド (サーバーレス)
BigQuery はフルマネージドであり、サーバーレスです。これは BigQuery のインフラ管理が Google によって行われており、我々ユーザーは関与しなくてよいことを示しています。
BigQuery のインフラは Google によって管理されています。コンピュート処理を行うワーカーはコンテナ群で形成されており (裏では Borg と呼ばれる技術が使われています)、ユーザーによるジョブ投入に応じて自動的にスケーリングします。
また、ストレージレイヤも仮想化されており、コンピュート能力とは切り離されています。
我々ユーザーは、BigQuery API を経由して BigQuery にデータを投入したり、SQL を投入するなどして、Google の持つ大量のリソースを柔軟に使うことができます。課金は、使った分だけの従量課金です (プラン選択で固定化も可能です)。
1-3.他の Google Cloud サービスとの連携
BigQuery の優れている点は、高度なスケーリング能力や保守性に留まりません。Google Cloud の他のサービスと連携させることで、容易に業務アプリケーションのデータを BigQuery にロード (読み込み) し、分析に繋げることができるのです。
例えば後述の 外部テーブル や BigLake テーブル (応用編で解説) を用いると、オブジェクトストレージサービスである Cloud Storage に保存してある CSV や Parquet などのファイルや Google ドライブ上のスプレッドシートを BigQuery にロードすることなくそのままクエリできたり、連携クエリ (Federated query、応用編で解説) により Cloud Spanner や Cloud SQL など業務用 RDBMS のテーブルを直接クエリすることができます。
またメッセージングサービスである Cloud Pub/Sub から BigQuery にデータを直接投入することで、IoT 機器や Web アプリからニアリアルタイムでデータを BigQuery に投入することが可能です。
このように、BigQuery と他の Google Cloud サービスを組み合わせることで、全ての情報システムからデータを途切れなく BigQuery に流し込むことができます。スピーディ・低工数でデータを利用まで繋げられるため、BigQuery がデータ戦略の中心と成り得ると言えます。
1-4.他クラウドサービスとの連携
BigQuery には、Amazon Web Services (AWS) の Amazon S3 や Microsoft Azure の Azure Blob Storage など、他のクラウドサービスのデータを取り込むための機能も備わっています。
当記事で紹介する BigQuery Data Transfer や、応用編の記事で紹介する BigQuery Omni を使うことでそれらの外部データソースから BigQuery にデータを取り込むことが可能です。ただし各クラウドサービスはデータが外部に出るときにデータサイズ (GB 数) に応じて課金が発生するので、その点には注意が必要です。
参考 : BigQuery Data Transfer Service とは
参考 : BigQuery Omni の概要
2.Google BigQueryを導入するメリットは?
Google BigQueryを導入することで得られるメリットは以下が挙げられます。
◯データベースの専門知識が不要
通常のデータウェアハウスのデータベースでクエリを使用する場合は必ずチューニングが必要となります。データベースの専門家やオペレーション担当者がいるか否かもパフォーマンスに影響を与えることになりますが、Google BigQueryはサーバーレスで利用できるため、チューニング作業を必要としません。従来のデータベースのクエリで必須だったインデックスも不要となり、データベースの専門知識がなくとも大規模なデータの分析が可能になりました。
◯コストパフォーマンスがよい
Google BigQueryは他のデータウェアハウスとは異なり、クエリを実行するときのみサービスが起動し、検索などの操作を行えます。料金はサービスを起動している間のみ発生するため、他のサービスより比較的コストパフォーマンスのよい料金体系であるといえます。
データ保存に関しても別途ストレージ費用がかかりますが、こちらも安価なコストとなります。
3.Google BigQueryのデメリット
一方でデメリットとしては以下が挙げられます。
◯慣れるまでに時間がかかる
Google BigQueryに関する学習環境は十分整っているとはいえない状況です。また経験者でもSQLの記述やエラーの解決にはある程度の慣れが必要なため、実際に活用できるまでにはある程度の時間がかかります。
◯適切な設定をしていないと、コストがかさむ可能性がある
適切な使用方法であればBigQueryは非常に安価で使いやすいサービスです。しかし適切な使用方法でない場合、コストがかさんでしまう場面があります。
「BigQueryを導入・活用したいがコストは安く抑えたい」という場合には主に以下の方法が挙げられます。
- クエリの対象データを限定する
- 課金されるデータの上限を設定する
- キャッシュを賢く利用する
- テーブルを分割する
- テーブルのクラスタリングを行い、データを圧縮する
4.Google BigQueryアカウントの開設方法
Google BigQueryのアカウント作成方法は以下の通りとなっており、Google Cloud Platform(GCP)の契約を実施する必要があります。
Google Cloudのプロダクト(製品紹介)ページの1つの、「BigQuery」のサイトへアクセスしてください。
STEP1
「BigQueryの無料トライアル」というボタンをクリックしてください。
STEP2
次のページでは、ユーザーの個人情報の入力が必要です。下記項目の入力が完了しましたら、「続行」をクリックして次に進んでください。
(1/3)「アカウント情報」
(2/3)「IDの確認と連絡先情報」
(3/3)「お支払い情報」
STEP3
入力確認後、Google Cloud Platform(GCP)への登録が可能になります。
GCPの左のナビゲーションの項目「ビッグデータ」の「BigQuery」を選択してください。
STEP4
BigQueryの管理画面にログイン可能となりますので、アカウントの準備は完了です。
5.Google BigQueryの利用料金
Google BigQueryの利用料金は下記の表の通りとなっています。
※東京(asia-northeast1)の料金を掲載しております
課金対象 | 料金 | 詳細 |
アクティブストレージ | $0.023/GB | 毎月10GBまで無料 |
長期保存 | $0.016/GB | 毎月10GBまで無料 |
BigQuery Storage API | Unavailable | BigQuery Storage APIは無料枠に含まれません |
ストリーミング挿入 | $0.012/200MB | 挿入に成功した行が対象課金となります最小サイズ1KBで各行が計算されます |
クエリ(オンデマンド) | $6.00/TB | 毎月1TBまで無料 |
クエリ(月定額) | $2,400/100 slots | 追加スロットは100スロット単位で購入できます |
クエリ(年定額) | $2,040/100 slots | 追加スロットは100スロット単位で購入できます |
参照:BigQueryの料金
Google BigQueryは上記の項目のみを課金対象としており、それ以外の操作については課金は発生しません。また、データを1TB保存したとしても月額は$23.00、月間で10TBのクエリを処理しても月額は$60.00です。また毎月最初の1TBのクエリ処理は無料のため、Google BigQueryは非常に安価なデータ解析ツールといえます。
6.まとめ
BigQueryで出来ることを具体的な機能とともにご紹介しました。
Google社の強力なインフラを使用したBigQueryはビックデータを処理する上で非常に便利です。エクセルやローカルPCでは到底出来ないような、大容量なデータが高速で処理が可能です。また非常にシンプルで使いやすいのも大きな特徴で、これから扱う場合でもスムーズに扱えると思います。
無料トライアルも用意されており導入に向けて試しに利用することも用意ですので、一度試してそのパワーを実感されるのがおすすめです。
⇒【東証プライム企業も多数利用!】最先端のSNSマーケティングツール「Tofu Analytics」、「InstantWin」とは?