データウェアハウスという言葉を聞いたことがあるでしょうか。似た言葉に、データベースやデータマートなどがあり、何がどう違うのか混乱しがちな言葉です。
今回は、データウェアハウスとはどういうものか、その特徴や利用するメリットについて解説します。データベースやデータマートとの違い、オンプレミス・クラウド両タイプのDWH(データウェアハウスの略語)製品についても調べました。
データウェアハウスとは
データウェアハウスとは、データの履歴を保存する「データの保管庫」(data warehouse)の役割を持つデータベース、あるいはデータの保管庫を構築・運用するためのソフトウェアのことです。
データウェアハウスに格納された過去の履歴データの分析・比較などを行うことで、計画立案や意思決定などに利用する目的で導入されます。また、データベースのパフォーマンスを向上させることも役割のひとつです。
データウェアハウスのアーキテクチャ
この記事では、最新データのみを保持しているデータを「トランザクションデータ」、トランザクションデータを格納しているデータベースを「トランザクションデータベース」と呼ぶことにします。
データウェアハウスの基本的なアーキテクチャは、1つのトランザクションデータに対して、すべての履歴データを時系列に沿って保持することにあります。
企業などの業務を進めるなかで発生する取引記録は、1つのデータとしてデータベースに保存されます。このデータは取引Noなど一意に識別する主キーを持ち、追加・変更・削除などが頻繁に発生しますが、最新データのみを保持している状態です。
一方、データウェアハウスでは、1つのデータに加わる変更を時系列に沿った履歴データとして保管しています。1つのデータに対して、過去のある時点でのデータはどういう状態だったのかがすぐにわかるデータ構成となっています。
例えば、ネットショップの取引管理システムがあるとしましょう。取引データは、ユーザーが買い物かごに商品を入れたとき、購入したとき、入金したとき、発送したときなどで状態が変化します。
トランザクションデータは、最新の状態のみを保持しています。履歴データでは、状態が変化するたびにデータが増えていると考えてください。
履歴データはどうしてもデータ量が多くなります。そのため、データウェアハウスでは、データの加工やインデックス(索引)などの作成、検索ツールなど、データを素早く取り出せるような機能が数多く備わっています。
データウェアハウスを利用するメリット
データウェアハウスを利用するメリットは主に以下の通りです。
- 過去の履歴データからの分析や比較が可能になる
- 過去履歴を利用して意思決定が行える
- 多数のデータベースからデータを統合することによるパフォーマンス向上
- トランザクションデータと履歴データの分離による両方のパフォーマンス向上
特に、過去の履歴データを利用した分析結果を活かして現状の課題を抽出、経営の意思決定などに役立つことが、データウェアハウスの大きな利点です。
また、トランザクションデータを格納する業務システム側では、データ量が少ないのでデータの更新を素早く行えます。一方、データウェアハウスでも、分析や比較などデータ参照のみを行うため、双方のパフォーマンスが向上します。
データウェアハウスの活用例
データウェアハウスは、世界中のさまざまなシステムに導入されています。特に、多種多様な部門を擁する大企業は、部門ごとに業務システムを持ち、連携がうまくいっていないケースが少なくありません。そのため、大企業ほどデータウェアハウスの導入には前向きだといわれています。
活用例としては、世界中に顧客を持つeBayの例を見てみましょう。eBayでは、購買者や出品者のエクスペリエンス分析、不正行為の監視、収益管理などに活用しています。
従来、数多くの業務システムが存在しているコンチネンタル航空などの航空会社も、データウェアハウスの活用により収益改善を図ってきました。例えば、統合した履歴データを使って、座席の在庫管理など収益改善策を推進しています。
データウェアハウスとデータベースの違い
データベースとは、一般的にトランザクションデータを格納するソフトウェアを指します。データウェアハウスとトランザクションデータベースの違いについて比較すると以下の通りです。
比較項目 | データウェアハウス | トランザクションデータベース |
---|---|---|
利用目的 | データの蓄積・分析、ビッグデータ | トランザクション処理 |
保存タイミング | 通常はバッチ処理により深夜に一括でデータ作成&保存 | データの更新時(追加・更新・削除) |
データ保存領域の特徴 | 検索に最適 | 更新に最適 |
データの正規化 | 検索しやすいよう非正規化 | 高度に正規化 |
トランザクションデータベースは、業務システムを遂行するためにデータを最新に保ち、データの検索だけでなく更新も頻繁に行われることが特徴です。そのため、更新データを探し、データ更新のパフォーマンスに配慮されています。
データウェアハウスは、逆にデータの検索に最適化されており、ビッグデータを扱うときも高いパフォーマンスが出るように設計されていることが特徴です。
データウェアハウスとデータマートの違い
データマートとは、特定のニーズに対応し、最適化されたデータベースのことです。データウェアハウスとデータマートの違いも比較してみました。
比較項目 | データウェアハウス | データマート |
---|---|---|
データの範囲 | 複数部門のデータを統合 | 特定部門のデータに特化 |
利用ユーザー | 全ユーザー | 特定部門のユーザー |
データサイズ | 巨大 | 必要最小限 |
データの状態 | 詳細で完全な情報 | 要約した情報 |
データウェアハウスは全社で利用する履歴データであり、データが詳細まで完全な状態で保存されています。
データマートは、データウェアハウスの格納データから特定の目的に加工したデータを保管しています。そのためデータサイズが必要最小限で、保持している情報も必要に応じて要約した情報を保持する仕組みです。
オンプレミス型データウェアハウス製品の主要メーカー
オンプレミスとは、自社施設の構内に構築したシステムのことです。オンプレミス型のデータウェアハウス製品の主要メーカーを紹介します。
SAP
SAPは、全社の統合システム・基幹システム製品(ERP)「SAP」のメーカーです。ERPのノウハウを活かしたデータウェアハウス製品「SAP BW/4HANA」は、オンプレミス環境に加えて、クラウド環境でも稼働するソリューションを展開しています。
Oracle
Oracleは、世界中の企業が利用しているデータベース製品「Oracle」のメーカーです。
Oracleでは、オンプレミス型の「Oracle Database」、Oracle Databaseとハードウェアを統合した「Oracle Exadata Database Machine」を提供しています。なお「Oracle Database」はクラウドでも利用可能です。さらに、クラウド専用の「Oracle Autonomous Data Warehouse Cloud」も提供しています。
IBM
IBMは、コンピュータ関連製品・ソリューションサービスを提供するIT界の有名企業で、データベース製品「Db2」を提供しています。
IBMのデータハウス製品は「IBM Integrated Analytics System」「IBM Db2 Warehouse」など4製品で構成。分析に人工知能を使い、オンプレミスとクラウドのどちらでも動作させることができます。
データウェアハウス機能を提供する主要クラウドサービス
主要なクラウドサービスは、データウェアハウスに関する機能を提供しています。ここでは、AWS(Amazon)・Azure(Microsoft)・GCP(Google)の3サービスについて、データ蓄積、データ加工、分析・可視化に関するサービス名を以下の表にまとめました。
サービス名 | データ蓄積 | データ加工 | 分析・可視化 |
---|---|---|---|
AWS(Amazon) | S3 RedShift |
Glue Lambda |
EMR Athena QuickSight |
Azure(Microsoft) | Azure Blob Storage |
Databricks Azure Data Factory |
Synapse Analytics PowerBI |
GCP(Google) | CloudStrage BigQuery |
Cloud Dataflow BigQuery |
BigQuery DataLab |
主要クラウドサービスは、いずれもデータウェアハウスの実装が可能なサービスを網羅。現在利用しているクラウドサービス上にデータウェアハウスを構築する際は、データ蓄積・データ加工・分析ツールを組み合わせて構築します。
意思決定に使えるデータウェアハウス
データウェアハウスは、経営層の意思決定や業務改善、データベース操作自体のパフォーマンス向上に役立つソフトウェアです。データウェアハウスに蓄積された過去の膨大な履歴データを分析することで、その企業が抱える課題を抽出し、経営を改善するヒントが見つかります。
データベースやデータマートとの違いをしっかりと把握し、仕事で「データウェアハウス」という言葉を聞いても、受け答えできる程度には理解しておきましょう。