データウェアハウス(DWH)はデータ分析基盤の中において、データを種類毎に整理して保存するという役割を担っています。
データウェアハウスを整備することで、思い立った時に迅速にデータマートを作成し、分析に取り掛かることができます。
本記事ではデータウェアハウスについて定義から具体的な製品まで解説していきます。
データウェアハウスとは分析に向いたデータの倉庫
データウェアハウスの定義
データウェアハウスとはデータ分析・可視化に向いた形式で業務で発生した情報を一元管理するためのデータベースです。1990年代にアメリカのコンピュータ科学者であるビル・インモンによって提唱されました。それまでのデータベースはアプリケーションやサービスのためにデータを効率的に処理することに特化しており、ビジネスでの活用(データ分析・可視化)に使用するにはパフォーマンスが良くなく、データベース構造が複雑でした。そこでインモンはITのスペシャリストではないビジネスユーザーにとっても見易いデータベース構造かつビジネス上で必要な処理に適したデータウェアハウスという概念を提唱しました。インモンはデータウェアハウスの特徴として下記の4つの特性をあげています。
- サブジェクト指向 :データサブジェクト(主題)で分けて整理すること(営業、人事 etc…)
- 統合化 :企業内のデータを一元管理する
- 恒常的 :一度入ったデータは変更されない
- 時系列 :時系列に沿ってデータが格納される
従来のデータベースではビジネスでの活用目的など考慮されていませんし、システムに関わるデータしか扱っていません。また、情報の変更があればデータは上書きされ、必ずしも時系列にデータが貯蓄されているわけではありません。このようにデータウェアハウスとは従来のアプリケーション・サービスに向いたデータベースとは異なる目的のために提唱された新しいデータベースの概念なのです。
似たシステムとの違い
データウェアハウスはデータ分析・可視化に向いたさまざまな機能を持っています。
データレイクとの違い
データウェアハウスとデータレイクは扱うデータの形式が大きく異なります。データウェアハウスは表形式のテーブルを扱うのに対し、データレイクは画像や動画を含めたファイル形式のデータを扱います。
データマートとの違い
データウェアハウスとデータマートはどちらも表形式のテーブルを扱いますが、扱うデータの量が大きく異なります。データウェアハウスは全社のデータを扱うのに対し、データマートは特定の分析に必要なデータのみを扱います。
データベースとの違い
データウェアハウスと従来のデータベースは、データの処理方法に違いがあります。データウェアハウスは列指向でデータの処理を行います。列指向とはテーブルの縦方向に処理を走らせることを指します。列指向で処理することによってその列(カラム)の平均値や最大値を効率良くかつ早く算出することができます。従来のデータベースは行指向で処理するものがほとんどです。行指向は特定の列のみの計算は列指向に劣りますが、少数の行を効率良く取得するのに適しています。
データウェアハウスが持つ利点
本章ではデータウェアハウスの役割やその利点を解説します。
データウェアハウスによってデータの民主化が進む
データウェアハウスがあることよる企業にとっての一番のメリットは社員が積極的にデータを活用しやすくなることです。部署やシステムにデータが散在しているとデータを探すだけでも一苦労で、その手間を惜しんでデータを活用し、よりビジネスを高度化させる機会を失ってしまいます。しかし、データウェアハウスとして企業内のデータを一元管理することで、データを探す手間はほとんどなくなります。これによってデータを活用する障壁がなくなり、社員がデータ活用をしやすい環境を作ることができます。
部門・システム横断のデータ分析をスピーディに行うことができる
データウェアハウスを構築することで、それまで別々に管理されていたデータを掛け合わせて分析・可視化することが容易になります。例えば、営業成績と残業時間の関係を分析したい時、データがバラバラに管理されていれば、各システム管理者に問い合わせてデータを取得し、異なるシステム間のデータを結合するためのキーやデータ型の整備を行った後、分析に取り掛かります。
しかし、データウェアハウスとしてデータを一元管理し、キーや文字型もあらかじめ整理しておくことですぐに異なる部門やシステムのデータを掛け合わせた分析を行うことができます。
データ分析基盤があることによって、データ分析者はストレスなく整備されたデータを取得でき、分析に集中することができます。
データウェアハウスの活用事例
本章ではデータウェアハウスが実際に企業でどのように活用されているかを事例を用いて紹介します。
グローバルのデータプラットフォームを構築した富士通の事例
富士通では、事業部やグループ単位でデータが散在していた富士通ではデータプラットフォームを構築することで、グローバルのデータを全社共有で管理する基盤を整備しました。アーキテクチャにもAWSのデータウェアハウス製品である、Amazon Redshiftが含まれています。
参考:富士通、グローバル 12 万人超の社員が利用するデータ活用プラットフォームを構築し、データドリブンによる未来予測型経営へ変革
データ民主化に向けデータ活用基盤を構築したLIXILの事例
LIXILでは社員全員がデータ活用を積極的に行うデータ民主化に向けた土壌として全社的なデータ活用基盤を構築しました。Googleのデータウェアハウス製品であるGoogle BigQueryによってITのスキルが高くない社員でもデータを探索・取得しやすいシステムの構築を行っています。
参考:LIXIL:BigQuery を中心としたデータ活用基盤 LIXIL Data Platform を構築、”データ活用の民主化” を推進
データウェアハウス構築5STEP
本章ではデータウェアハウス構築までの流れを解説します。
1. 社内にあるデータを整理する
まずは、社内で扱われているデータ・システムの整理を行いましょう。データ分析基盤は部門・システム横断で全社的なデータを統合的に整理することで真価を発揮します。人事部はどのようなシステムを利用してそこにはどのようなカラムを持つテーブルがあるのか、営業部はどうなのかを社内のデータ・システム全てにおいて整理することがデータ分析基盤構築に向けた最初のステップとなります。
2. データ活用現況・ニーズを整理する
システム・データの整理ができた後は、社内で実際に使用されているBIダッシュボードやデータ分析はどのようなものか、他にデータ分析のニーズがないかをヒアリングなどを通じて把握しましょう。データ分析基盤は全社的なデータを扱うというものの、ニーズが強いデータから優先的に実装することで社内でもデータ分析基盤の有用性をアピールすることができます。その優先順位を把握するためにも、社内のデータ活用状況やニーズを整理しましょう。
3. サブジェクトを整理し、データ要件を整理する
システム・データの整理、データ分析ニーズの把握をした後は、データウェアハウス内でのデータ整理の方法を決めるために、サブジェクトを整理しましょう。一般的には部署ごとかつ業務ごとに分けてサブジェクトとし、そのサブジェクト毎にデータウェアハウスのスキーマを設計する形が多いです。その後、スキーマ内で扱うテーブル設計をできる限り正規化した形で行いましょう。
4. データウェアハウスの環境設定を行う
ここで実際のデータウェアハウス製品を用意し、環境設計を行いましょう。最近はクラウド型のデータウェアハウス製品が主流となっており、保守運用をクラウド事業者側で行うマネージドサービスを使用することで、保守運用人員なしで必要分のリソースだけに課金してデータウェアハウスの構築を進めることができます。
5. データ要件に従ってスキーマ・テーブルを構築する
データウェアハウスの環境構築が出来次第、データ要件にしたがって実際にスキーマ・テーブルの実装をしていきましょう。
データウェアハウス製品3選
本章ではデータウェアハウス製品としてよく知られる製品をその特徴とともに解説します。
Google BigQuery(おすすめ)
まず初めに、Googleが提供するGoogle BigQueryという製品です。こちらはGoogle Cloudというクラウドプラットフォームサービスのうちの1サービスとして提供されており、ユーザー側でのインフラの管理が必要のないマネージドサービスです。それにより、ユーザーはデータの集約・加工・分析に注力することができます。私も使用しますが、他製品に比べてもコンソールがシンプルで使いやすさを感じます。料金は従量課金制で、扱うデータ量とクエリ量によって使用した分だけ課金されます。無料枠も提供されており、とりあえずデータウェアハウス製品を使ってみたいという方にはぜひおすすめしたい製品です。
また、BigQueryでは機械学習サービスなども豊富に提供されており、データウェアハウス構築後の活用面でも非常に役に立つサービスとなっています。
Amazon Redshift
2つ目に紹介するのはAmzonが提供する、Amazon Redshiftという製品です。こちらもAmazonが提供するAWSというクラウドプラットフォームサービスの1サービスとして提供されています。Redshiftも従量課金制かつマネージドサービスであるものの、コンピューティングリソースなどを事前に設定する必要があり、利用までのハードルは若干BigQueryよりも高いかなという印象です。しかし、AWSは世界的にもシェアの大きいクラウドプラットフォームサービスのため、すでに会社などでAWSを使用している方にとっては始めやすいですし、データの集約も容易でしょう。
Snowflake
最後に紹介するのは米Snowflake社が提供する、Snowflakeというデータウェアハウス製品です。こちらは上記2製品とは異なり、Snowflake自体で1つの製品となっています。Snowflakeも従量課金制であり、マネージドサービスであるものの、やはりコンピューティングリソースを事前にユーザー側で定義しなければならず、利用までのハードルは若干高いかもしれません。しかし、AWSやGoogle Cloudなど複数のクラウドサービスからデータを統合し、データウェアハウスとして整備することには優れているので、大企業などで複数のクラウドプラットフォームサービスを利用している方にとっては非常に役にたつ製品だと言えるでしょう。
まとめ
本記事ではデータウェアハウスについてその特徴から具体的な製品について解説してきました。従来のデータベースと比較して最近の概念ということもあり、適切な理解をすることが若干難しくはありますが、本記事が参考になれば幸いです。
データビズラボでは、必要なデータ活用人材を育成・確保するための研修やデータ人材戦略の支援を行っております。
データ活用人材が不足してお困りの場合はデータビズラボへお問い合わせください。
コメント