- 更新日 2024.10.17
- カテゴリー インフラ構築
GCPのBigQueryの使い方|GCPでのデータ分析、メリット・注意点について解説【2024年最新版】
「データ分析をやってみたいけど、どのサービスを使えば良いの?」
「BigQueryのデータ分析が凄いって聞くけどどうなの?」
「BigQueryって何が出来て、いくらくらいかかるの?」
データ分析のためのサービスは世に溢れています。その一方で、情報が断片的であったり専門的である場合も多く、正しいサービス理解や比較を行うことは困難です。
昨今データの活用がより重要視されており、多くの企業の経営課題でもあります。その中でもBigQueryは、特定のユースケースにおいて頭ひとつ抜けたサービスです。BigQueryでできることやGCPのその他のデータ活用サービスを理解することは、事業の成長に繋がるデータ活用を本気で考え始める大きな一歩ではないでしょうか。
そこで、クラウドエンジニアとして働いているプロへの取材情報をまとめ、BigQueryをはじめとしたGCPのデータ分析サービスについて解説します。
最後まで読めば、GCPのBigQueryなどのデータ分析サービスをきちんと理解できますので、ぜひ参考にしてください。
※データ分析をやってみたいが、技術面や料金面で不安がある方は、システム幹事にお問い合わせください。予算や目的などをヒアリングした上で、最適な開発会社を提案します。相談料・紹介料は一切かかりません。
GCP(Google Cloud)とは何か
まずは、GCP(Google Cloud)についてのイメージを掴んでもらうため、GCPの概要から説明します。GCPは2008年にGoogleがリリースしたクラウドサービスです。サービスリリースの時期は、2006年リリースの業界リーダーAWSより2年遅く、2010年リリースの業界2位Microsoft Azureよりは2年早いタイミングでした。
GCPは、Google App Engine(GAE)というWebアプリケーションのホスティングサービスからスタートしました。GAEは拡張やOSの管理をプラットフォーム側が責任を持って実施するため、利用者はアプリケーション部分のみに集中できるというPaaSサービスでした。
2011年にはBigQueryが登場しました。BigQueryは元々はGoogleの社内システムでした。Googleは、YoutubeやGoogle検索、Gmailなどのビッグデータを扱っており、その仕組みを誰にでも使えるようにしたのがBigQueryです。
GCPの2022年Q1期のクラウドインフラ業界におけるシェアは10%でした。AWSやAzureに大きな差を付けられています。
インフラストラクチャーのシェア
GCPを使うメリット
GCPを使うメリットは、Googleとして培っているデータ分析などの特定の領域に非常に強いことが挙げられます。Googleは以前から、YoutubeやGoogle検索、Gmailなどのビッグデータを分析・活用しています。
例えばBigQueryは、元々Googleの社内システムであったDremelという大規模なクエリ実行システムを外部のユーザー向けでも利用できるようにしたサービスです。そのような歴史があることもあり、BigQueryは他クラウドサービスと比較しても、低コストかつ高パフォーマンスでビッグデータを分析することができます。
また、コンテナのオーケストレーション(構築や運用の管理)ソリューションであるKubernetes(k8s)も元々はGoogleが開発したという経緯もあり、GCP上でk8sが使用できるGKE(Google Kubernetes Engine)も強みであるサービスの1つです。
GCPのConsole画面
Googleはクラウド業界でも後追いの立場ということもあり、サーバやデータベースの価格設定についてもAWSやAzureよりも安価に使える場合があります。
例えばLinuxの仮想サーバについては、AWSやAzureよりも2割程度安く使うことができます(従量課金、2 vCPU 7.5~8Gメモリの場合)。データベースについても、オープンソース(OSS)のPostgreSQLなどを使用する場合も、AWSやAzureよりも2割程度安価に使用できます。(従量課金、4 core 16Gメモリ~の場合)
サービス |
GCP |
AWS |
Azure |
仮想サーバ (Linux) - 従量課金 |
$62.3/月 ※n1-standard-2 (2 vCPU / 7.5G Memory) |
$78.3/月 ※t3.large (2 core / 8G Memory) |
$79.6/月 ※B2ms(2 core / 8G Memory) |
データベース (OSS) |
$526/月 ※4 core 16 GB Memory |
$654/月 ※db.t3.xlarge (4 core / 16G Memory) |
$794/月 ※4 core 20.4 GB Memory |
また、サーバレスサービスに関しても、無料枠が多いなどのメリットが挙げられます。
例えばGCPのCoud Functionsは、月に200万回まで無料枠で呼び出すことができます。AWSやAzureのサーバレスサービスが月100万回呼び出しまでなので、倍の呼び出しまで無料枠でカバーすることができます。また、コンピューティング時間に関しても、他サービスの2割程度と、安く設定されています。
サービス |
GCP |
AWS |
Azure |
翻訳API - 無料枠 |
50万文字/ 月まで無料 |
200万文字/ 月まで無料 |
200万文字/ 月まで無料 |
翻訳API |
$20/月 (/100万文字) |
$15/月 (/100万文字) |
$10/月 (/100万文字) |
音声文字起こしAPI - 無料枠 |
1時間/月まで無料 |
1時間/月まで無料 |
5時間/月まで無料 |
音声文字 起こしAPI |
$1.44/月(/時間) |
$1.44/月 (/時間) |
$1/月(/時間) |
画像認識API - 無料枠 |
1000ユニット/月まで無料 |
5000枚/月まで無料 |
5000トランザクション/月 まで無料 |
画像認識API |
$1.5/月 (/1000ユニット) |
$1.3/月 (/1000枚) |
$1/月 (/1000トランザクション) |
GCPを使うデメリット
一方で、GCPを使う際のデメリットも存在します。例えばGCPは英語のドキュメントが多く、日本語ドキュメントはまだ整備されていない場合もあります。
また、AWSやAzureに比べてインターネットに公開されている「〜をやってみた」系の知見が少ないことなどが挙げられます。GCPの案件数がAWSやAzureと比較して少ないため、世に溢れている知見が少なく、経験のある開発会社もAWSやAzureと比べると見つけるのはやや難しいでしょう。
サービス数に関しても、AWSやAzureが200以上のところ160程度なので、ややカバー範囲が狭い印象を受けます。また、AWSやAzureには存在する米国政府専用のリージョンがない点もデメリットです。
また料金に関して、AI系のサービスはやや高い印象を受けます。例えばAPIの料金をみると、無料枠はAWSやAzureよりも少ない場合が多いです。また、料金についても1〜2割高価なサービスが見受けられます。
BigQueryとは
BigQueryはGoogleが提供するデータウェアハウスサービスです。データウェアハウスというのは、ビッグデータ分析用のデータベースのことです。
BigQueryは、元々Googleの社内システムであったDremelという大規模なクエリ実行ができる仕組みを、外部のユーザーでもクラウドサービスとして利用できるようにしたもの。
Big QueryのConsole画面
例えば、ログデータをBigQueryで分析し、結果をスプレッドシートへ格納したり、Google AnalyticsのデータをBigQueryで分析して可視化するなど、さまざまなユースケースで活躍します。
BigQueryの特徴
BigQueryの一番の特徴としては、やはり扱えるデータ量と、データ処理速度の速さが挙げられます。BigQueryではテラバイト(TB)やペタバイト(PB)単位のビッグデータを扱うことができ、それらのデータに対するクエリを数秒から数分で実行し、分析結果を出力することができます。
同様の作業を別のサービスで実現しようとすると、量と速さの壁が立ちはだかります。例えばエクセルやスプレッドシートなどでは、テラバイト単位のデータを開くことすらできないでしょう。また他のビッグデータサービスを用いた場合も、BigQueryほどのスピードを実現することは難しい場合がほとんど。例えば株式会社ブレインパッドは、データ分析基盤をAWSからGCPのBigQueryに移行しています。
連携しているサービスについても多彩です。CSVファイルやJSONファイルなどのアップロードはもちろんのこと、Google DriveやGCPのCloud Storage、Bigtableなどに加え、AWSのS3やAzureのBlob Storageなどの他クラウドのストレージサービスもサポートしています。
また、Google Analyticsやスプレッドシートからのインポートも可能です。分析したデータは、BIツールであるLooker Studio(旧Googleデータポータル)と連携させ、分析結果をグラフなどに可視化することもできます。
BigQueryの料金
操作 |
料金 |
備考 |
分析 (クエリ実行) |
$6 / 1TB ※オンデマンド実行 |
1TB / 月まで無料 |
アクティブ ストレージ |
$0.023 / 1GB |
10GB / 月まで無料 |
長期保存 |
$0.016 / 1GB |
10GB / 月まで無料 |
バッチ データ取り込み |
無料 |
保存されたデータに対しては データ保存料金が発生 |
ストリーミングデータ取り込み |
$0.012 / 200MB |
成功した行に対して課金 |
BigQueryの料金は分析、データ保存、データ取り込みの3要素に対して課金されます。
分析料金については、実行するクエリの対象となるデータ量に応じて課金されます。東京リージョンでは1TBあたり$6なので、例えばクエリでスキャンされるデータが5TBの場合$30。毎月1TBまでは無料枠を使用することができます。
データ保存料金については、アクティブストレージと長期保存にわかれます。アクティブストレージは過去90日以内に作成・変更されたテーブルのデータ。長期保存は、過去90日以内に変更がされていないデータです。アクティブストレージと長期保存について、耐久性や可用性の違いはありません。あくまでも、使っていないデータであれば割引します、というスタンスです。
東京リージョンでは、アクティブストレージが1GBあたり$0.023、長期保存が1GBあたり$0.016の料金となります。アクティブストレージも長期保存も、毎月10GBまでは無料枠があります。
比較例として、AWSのデータウェアハウスであるRedshiftの料金も見てみます。Redshiftは、クエリ実行に料金はかかりませんが、使用時間に対して課金が発生します。原則データウェアハウスは停止せず使用し続けますので、最も安いタイプで$226.08/月の月額結果が発生します。
料金面では、クエリの対象データ量が少ない場合にはBigQuery、多い場合にはRedshiftの方が安価になります。
データ取り込みには、バッチ読み込みとストリーミングの2種類が存在します。バッチ読み込みは、単一の処理で一括でデータをBigQueryに読み込みます。この場合は原則無料で、保存されたデータの分だけデータ保存料金が課せられます。
ストリーミングについては、1レコードずつであったり、細かい単位で経時的にデータが取り込まれます。ストリーミングは、取り込みが成功した行について、200MBあたり$0.012がかかります。
BigQueryの注意点
BigQueryの注意点として、思わぬ高額料金が発生するというリスクが存在します。BigQueryはデータ保存とデータ検索、データ取り込みに課金されるため、それをきちんと理解しておくことが大切です。データ検索のクエリをあまり考えず、都度ビッグデータに全件検索をかけていたら、月100万円以上の請求が来たという怖い話もあります。
このような事故を防ぐために、いくつかできることを紹介します。
まずは、クエリ実行による分析の前に必ずプレビューを行ってください。クエリは対象のデータ量に応じて課金されますが、プレビューのドライラン機能を使うことで対象のデータ量を知ることができます。
「Select *」など、安易に全件検索などを行わないためにも、プレビューを実行する癖をつけると安心です。より安全な方法として、課金される最大のデータ量を指定しておくこともできます。この場合、クエリ実行の度に対象のデータ量が推定され、それが上限を超えるとクエリは失敗します。
この場合、料金はかかりません。この方法は、コストを上振れさせないという面では有効ですが、本当に必要な分析も失敗してしまうため、注意が必要です。
GCPのその他データ活用サービスの紹介
Looker Studio
クラウド上で使用できる、Googleが提供するBIツールです。以前はGoogleデータポータルという名称でしたが、2022年10月に名称変更が発表されました。
Looker Studioでは、GoogleスプレッドシートやGoogle Analyticsなどのさまざまなデータから、直感的にグラフや表などを用いたダッシュボードを作成することができます。その他のデータソースも充実しており、GCPのBigQueryはもちろんのこと、Google AdやPostgreSQLデータベース、MySQLデータベース、AWSのRedshiftなどもサポートされています。
操作性に関しても非常に良く、SQLなどの専門知識がなくてもイケてるダッシュボードが作成できるよう、作り込まれています。また、Googleアカウントを準備すれば原則無料ですぐ始められることもメリットです。
画像引用:GCP
コストをかけずにBIを始めてみる、といった企業にはうってつけではないでしょうか。
Dataflow
Google Dataflowは、Googleが提供するETLサービスです。ETLというのは、Extract(データ抽出)、Transform(データ加工)、Load(データ書き出し)の頭文字をとったものです。平たくいうと、データを抽出して、整形して扱いやすくするよう処理を行うパイプラインサービスです。
データ分析のためのデータの前処理などに使用されます。
Dataflowは、定義されたパイプラインの構成に従って環境を自動構築し、処理を実施してくれます。また、負荷に応じた拡張も自動で行ってくれます。(=オートスケーリング)
少し専門的な話をすると、Dataflowの裏側ではIaaSであるGoogle Compute Engine(GCE)が動いており、その起動時間に対して料金が発生します。
DataflowのConsole画面
※公開されているCovid-19のグローバル時系列データをサンプルとして使用
Dataflowは、GCPのさまざまなサービスと連携することができます。BigQueryはもちろんのこと、ストレージサービスであるCloud StorageやキューサービスのPub/Sub、データベースであるCloud SpannerやBigtableなどをサポートしています。
また、Cloud Storage上にファイルが配置されたらパイプラインを実行する、などのイベントに起因した実行も可能です。GCPでデータ分析を行う際には、ぜひ活用したいサービスの1つです。
Bigtable
Bigtableは、Googleが提供するNoSQLデータベースです。大量の読み取り/書き込みに最適化されています。
元々Bigtableは、BigQueryと同じくGoogle社内のシステムでした。2006年にGoogleから公開された論文で、存在が公となりました。Googleでは、Google Analyticsのユーザーデータや、Google Mapのデータストアなどに利用されています。その後の2015年に、GCPからBigtableを一般ユーザーも利用できるようになりました。
BigtableのConsole画面
Google Cloudのページを見ると、IoTデータや複数サーバのCPU/メモリ利用率の経時変化データなどがユースケースとして挙げられています。また、各項目値は10MB以下であること、データ量が1TB以上である場合に真価を発揮します。
BigQueryとの違いとしては、BigQueryが分析用途であるのに対し、Bigtableは大量のデータの読み取り・書き込み処理が発生するデータベースとして使用します。
GCPでデータ活用した事例の紹介
BigQueryでテラバイト単位のデータ分析を実現
株式会社ヤプリは、2013年に創業したノーコードのアプリ開発・運用・分析プラットフォームを提供する企業です。2020年時点で550以上のアプリケーションへの採用実績があります。事業を拡大し続け、2020年にはマザーズへの上場も果たしました。
ヤプリではビジネス拡大のためにはデータドリブンなカスタマーサクセス(CS)の実現が不可欠と考えています。以前はデータの分析にGoogle Analyticsを使っていましたが、より詳細な情報を提供できる仕組みが必要なため、GCPのBigQueryなどを用いたデータ分析基盤を構築しました。BigQueryを選んだ理由としては、集計速度が段違いに早く、コストメリットも出やすいためです。
データパイプラインの構築は、4名で半年というタイトなスケジュールで行い、2020年7月から無事運用を開始しました。BigQueryを中心に、DataflowやCloud Storageを活用しています。マネージドな機能をうまく使ったため、低工数での実装が可能となりました。
画像引用:GCP
現在はテラバイト単位のデータを分析しており、今後のデータ増加に対してもGCPの拡張機能を用いて柔軟に対応していきます。BigQueryやGCPのその他サービスなど、クラウドの利点を最大限活用してデータ分析をおこなっている良い例ではないでしょうか。
GCPを活用することで100億行のデータの取り扱いが可能に
株式会社MonotaROは、B2B向けの通信販売会社です。製造業や自動車整備業などの現場で必要な工具、部品、消耗品などを1900万点以上扱っています。2000年に住友商事とアメリカグレンジャー社の出資により設立されて以降、わずか5年で登録事業所は10万件を突破しました。
画像引用:モノタロウ
モノタロウはデータドリブンカンパニーを掲げ、早くからデジタルマーケティングに注力してきました。その中で、2008年に構築したオンプレミスのデータ分析基盤では、限界を感じるようになってきました。モノタロウの事業は拡大傾向にありデータ量も増えているため、月次のバッチ処理が24時間で終わらないなどの課題が発生していました。このような課題もあり、ビッグデータを高速に扱うことのできるBigQueryの採用を決めました。
2017年にBigQueryへの移行を開始し、100億レコードにも及ぶ社内のデータをBigQueryに集約しました。これにより、丸一日かかっていた処理が数十分で終わるようになり、月次のバッチ処理を日次で実施できるようになりました。これにより、より精度の高いデータ分析結果を元に次のアクションを決められるようになりました。
BigQuery導入後は、扱えるデータ量が10倍になり、ほぼ、自動で生成される分析レポートの数も10倍になりました。BigQueryの強みを生かしてデータ分析をおこなった良い事例ではないでしょうか。
70万台もの自動販売機のデータ分析をリアルタイムに
コカ・コーラ ボトラーズジャパン株式会社は、日本でコカ・コーラ製品の製造・販売を行っている企業です。主力事業である自動販売機は、日本全国におよそ70万台を展開しています。欧米ではセキュリティなどの理由から自動販売機はそこまで普及していません。
自動販売機から抽出したビッグデータをうまく活用することで、大きなビジネス成果を上げることが可能となります。古くは営業担当者の経験と勘で自動販売機の製品構成は決定されていましたが、近年はデータに基づいてより戦略的に構成が決まるようになりました。
70万台からのビッグデータを分析するためには、強力な分析基盤が必要です。従来は独自のツールを使って分析していましたが、データの大きさなどが原因でデータを処理し切れなかったり、クエリ実行しても時間がかかるといった課題がありました。そこで分析プラットフォームをGoogle Cloud上に構築する計画を2020年に開始しました。
分析プラットフォームにはBigQueryや機械学習サービスのVertex AIなどを採用し、数ヶ月でクイックに構築しました。
画像引用:GCP
その結果、1週間かかっていたデータ分析がほとんどリアルタイムで実行できるようになりました。GCPを活用することで、機械学習のパイプラインのサイクルを効率化するようなMLOpsを実現しました。クラウドで実現可能な並列処理を活用し、分析の自動化・効率化を推し進めた良い例です。
BigQueryやGCPのデータサービスのまとめ
BigQueryの特徴やGCPのデータサービス、それらの活用事例について紹介しました。
- BigQueryを使うと、スプレッドシートやCSV、AWSやAzure、GCPのストレージ上のデータを活用したデータ分析が簡単に実行できる。
- BigQueryを用いることで、高速かつ大量のデータを分析できる。
- GCPには、BigQueryと連携できるデータサービスが多く存在する。
今回は、BigQueryやGCPのデータサービスについてご紹介しましたが、サービスの特徴だけでなく自社のやりたいことにマッチしたサービスやクラウド事業者を選ぶことが大切です。そのためには、ネットワークなどのITインフラの知識やクラウドのサービスに対する知識などが必要となってきます。
データ分析のためのクラウド選びに困った場合は、システム幹事にご相談ください。予算や目的から最適な会社をご紹介します。相談料などは一切かかりません。
コンサルタントのご紹介
岩田
専任のコンサルタントが、
お客様の予算と目的を丁寧にヒアリング。
最適な会社をピックアップ・ご紹介させていただきます!
初心者の方でも安心してご相談いただけます。
必ず開発会社に発注する必要はありません。システム開発の相場の情報から最適な会社選びまで無料でサポートします。お気軽にご相談ください。
Q. GCP(Google Cloud)とは何ですか?
GCPとは2008年にGoogleがリリースしたクラウドサービスのことです。Googleが培ってきたデータ分析の技術をもとに、ビッグデータの分析・活用を行っています。
この記事を書いた人
Definer Inc. | ライターチーム
専門分野: クラウド開発・クラウド移行(フルスクラッチ開発・自社SaaS提供・AI Ops構築)
外資IT企業出身のトップエンジニアが、企画・要件定義の上流から開発まで、総合的なITソリューションをワンストップ提供しております。また、AWS、Azure、GCPでのクラウド開発・移行、フルスクラッチなアプリ・システム開発を得意としています。「2025年の崖」を打破すべく、クラウドに関するお役立ち情報をお届けします。
このライターの記事一覧