今回は、Googleが提供するBigQueryについて説明します。
RDBMSやデータ分析の分野に詳しくないユーザーにとっては、[BigQuery]は正体が分かりにくいサービスのひとつです。MySQLやPostgreSQL、MicrosoftのSQL Serverと同じ分野のサービスなのか?それとも、違うサービスなのか?
そして、BIgQueryはどのように活用できるのか?
この記事では、Googleが提供する[BigQueryとは]をテーマに、この分野にそれほど詳しくない方を対象に説明します。
BigQueryはデータベース(RDBMS)なのか?
冒頭で触れたMySQLやPostgreSQL、SQL Serverなどは、それぞれデータベースシステム(RDBMS)の製品名称です。
RDBMSとは
RDBMSとは、リレーショナル・データベース・マネジメント・システムの頭文字を取った略語で、データベースシステムのうち、データモデルが「関係データベース」になっているものをいいます。
MySQLやPostgreSQL、SQL Serverなどは、「関係データベース」構造のデータベースのため、RDBMSに該当します。
BigQueryはデータベース(RDBMS)ではない
そして、今回のテーマであるGoogleの[BigQuery]はデータベース(RDBMS)ではありません。構造化されたデータを持ち、SQLで操作をするという観点から、データベースに近い印象を持ちますが用途が異なります。
BigQueryとは
BigQueryはデータベースではなく、「データウェアハウス」と呼ばれるサービスに分類されます。
データウェアハウスとは
データウェアハウスとは、膨大なデータを時系列で持ち、長期的な分析を行うことを目的にしたサービスです。
しばしば、データウェアハウスはデータベースと混同されることもあるのですが、おおまかに説明すると下記のようなイメージです。
データベース
顧客マスタ、商品マスタなど、企業で使う情報を体系的に保管するもので、当該情報を管理・更新するためのシステムのこと。
データウェアハウス
膨大なデータを時系列で持ち、長期的な動向などあらゆる分析を行い、意思決定をすることを目的にしたデータの保管庫のこと。
より分かりやすい実例を紹介しましょう。下記のイメージ図は、Googleが公開している「Googleトレンド」というデータで、特定の検索ワードについて、インターネット上で検索された回数の推移をグラフで表示したものです。
[MySQL]と[PostgreSQL]という検索ワードで検索された回数5年分をグラフ化したもの
ご想像しやすいかと思うのですが、日々、インターネットで検索される回数は膨大な量です。そのすべての検索ワードの回数を1日単位で記録し、分析に使える状態にするには、データベースではなくデータウェアハウスのほうが最適なのです。
この分析をデータベースを使って実行することには違和感を感じるのではないでしょうか。
そうです。これがデータベースとは異なるデータウェアハウスの存在目的なのです。
「時系列データ」「膨大な量のデータ」「分析・意思決定を目的にしたデータ」。これらがデータウェアハウスのキーワードになることもご理解しやすいのではないでしょうか。
BigQueryはGoogleの社内システムを一般向けに提供したサービス
本題です。BigQueryとは、Googleが自社で保有している膨大な収集データを分析するために構築した社内システム基盤を、一般向けに提供したサービスです。
Google Chromeの世界シェア、そして世界中のインターネット普及率から考えると、そのデータ量の多さは超膨大になることは想像できるでしょう。BigQueryは、その規模のビッグデータを分析するために開発されたシステムなのです。
表計算ソフトやデータベース(RDBMS)とは、正に桁が違う膨大なデータを高速で分析することが可能です。
あとがき:料金や使い方について
今回は、Googleが提供するデータウェアハウス[BigQuery]をテーマに記事を書きました。
BigQueryとは、をキーワードにインターネット検索をしても概要的な情報ばかりで、イメージが掴めなかった方も多いのではないでしょうか。
当サイトでは、BigQueryを理解するための前提である「データウェアハウス」についても、イメージと事例を使って説明しましたので、ご理解いただけたのであれば幸いです。
BigQueryの料金や使い方については、後日、別記事で説明しますので、ご関心があればまたご覧ください。