Google BigQueryとは?特徴やメリットについて解説
アナリスト 宮本
データ分析ツールの一種であるGoogle BigQueryを活用されている担当者も多いと思います。しかし、結局のところ「Googe BigQueryってなに?」「導入するとメリットあるの?」など疑問がある方も少なくないのではないでしょうか?
今回はそんなGooge BigQueryとはなにか、導入のメリットやデメリット、アカウントの開設方法、料金体系などについて解説します。
目次
- Google BigQueryとは?
- Google BigQueryの仕組み
- Google BigQueryを導入するメリットは?
- Google BigQueryのデメリット
- Google BigQueryアカウントの開設方法
- Google BigQueryの利用料金
- クエリの実行例
- 最後に
Google BigQueryとは?
Google BigQueryとは、Google Cloud Platformから提供されているビッグデータ解析サービスになります。本来、数TB(1TB=1,000GB)、数PB(1PB=1,024TB)のデータを処理する場合、時間がかかってしまいますが、BigQueryを使用すると数秒、数十秒でデータ処理が可能となります。データ分析におけるアクセスログの解析・業務効率化に欠かせないツールの1つとして注目されています。
Googleが社内用に開発した「Dremel(ドレメル)」という大規模なクエリを実行するサービスを社外向けのサービスとして提供し、2012年にリリースが開始されたものが「Google BigQuery」となります。
Google BigQueryの仕組み
前章で述べた通り、Google BigQueryの最大の特徴である超高速かつ大規模なデータ処理は、以下2点の仕組みで実現されています。
- カラム型データストア
- 通常のデータベースは行単位で横方向へのデータ読み込みが一般的ですが、BigQueryは列単位で縦方向への読み込みを行っています。横方向へのデータ読み込みの場合、データ全体を読み込む必要がありますが、縦方向の場合では必要なデータを読み込むだけでよく、また類似データを圧縮可能なため、非常に高速なデータ処理が可能になります。
- ツリーアーキテクチャ
- ツリーアーキテクチャとはクライアントからクエリを受け取るルートサーバーから、実際にクエリ処理を実行する多数のリーフサーバーへクエリが広がっていき、並列でデータ処理が行われる仕組みのことです。
- 複数のリーフサーバーに対してクエリが広がっていき、並行して処理されることで大規模なデータの高速処理を実現しています。
Google BigQueryを導入するメリットは?
Google BigQueryを導入することで得られるメリットは以下が挙げられます。
- データベースの専門知識が不要
- 通常のデータウェアハウスのデータベースでクエリを使用する場合は必ずチューニングが必要となります。データベースの専門家やオペレーション担当者がいるか否かもパフォーマンスに影響を与えることになりますが、Google BigQueryはサーバーレスで利用できるため、チューニング作業を必要としません。従来のデータベースのクエリで必須だったインデックスも不要となり、データベースの専門知識がなくとも大規模なデータの分析が可能になりました。
- コストパフォーマンスがよい
- Google BigQueryは他のデータウェアハウスとは異なり、クエリを実行するときのみサービスが起動し、検索などの操作を行えます。料金はサービスを起動している間のみ発生するため、他のサービスより比較的コストパフォーマンスのよい料金体系であるといえます。
- データ保存に関しても別途ストレージ費用がかかりますが、こちらも安価なコストとなります。
Google BigQueryのデメリット
一方でデメリットとしては以下が挙げられます。
- 慣れるまでに時間がかかる
- Google BigQueryに関する学習環境は十分整っているとはいえない状況です。また経験者でもSQLの記述やエラーの解決にはある程度の慣れが必要なため、実際に活用できるまでにはある程度の時間がかかります。
- 適切な設定をしていないと、コストがかさむ可能性がある
- 適切な使用方法であればBigQueryは非常に安価で使いやすいサービスです。しかし適切な使用方法でない場合、コストがかさんでしまう場面があります。
「BigQueryを導入・活用したいがコストは安く抑えたい」という場合には主に以下の方法が挙げられます。
- クエリの対象データを限定する
- 課金されるデータの上限を設定する
- キャッシュを賢く利用する
- テーブルを分割する
- テーブルのクラスタリングを行い、データを圧縮する
参照:BigQueryにおけるコスト最適化のベストプラクティス
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の管理画面にログイン可能となりますので、アカウントの準備は完了です。
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は非常に安価なデータ解析ツールといえます。
クエリの実行例
参考までに下記テーブルにてBigQueryで簡単なクエリを実行し、データを抽出した結果とその料金を試算してみます。
- テーブル情報
- 表のサイズ:952.88MB
- 長期保存のサイズ:952.88MB
- 行数:1,477,553(147万行)
- ストレージ料金:$0(おおよそ0円)※10GB未満のため
- 実行クエリ
- クエリ料金:$0(おおよそ0円)※1TB未満のため
- クエリ実行結果
- データ処理の所要時間、処理、課金されたバイト数が表示されます。147万行のデータの処理時間が1.8秒と非常に高速なデータ処理になります。
最後に
安価かつ大規模なデータ解析ツールとして注目を集めている「Google BigQuery」。その用途はWebサイトのアクセス解析やソーシャルゲームの行動データのログ解析、またインターネット接続型テレビのアクセスログ分析など多岐にわたります。
データ分析業務を効率させた事例やコストを抑えつつパフォーマンスを向上させた事例も増えてきています。ぜひ、社内、組織内のデータを活用する手段として導入を検討されてはいかがでしょうか?もしGoogle BigQueryに関することでご相談があれば、当社の解析チームにお気軽にお問い合わせください。