プログラミング
 Computer >> コンピューター >  >> プログラミング >> プログラミング

3層データウェアハウスアーキテクチャとは?各層の役割と3つの実装モデルを解説

3層データウェアハウスアーキテクチャの概要

データウェアハウスは、一般的に「ボトム層(下位層)」「ミドル層(中間層)」「トップ層(上位層)」という3層構造のアーキテクチャを採用しています。各層が明確な役割を担うことで、大量のデータを効率的に統合・分析できる基盤を実現しています。

ボトム層:ウェアハウスデータベースサーバー

ボトム層はウェアハウスの基盤となるデータベースサーバーで、多くの場合リレーショナルデータベースシステム(RDBMS)によって構成されます。業務データベースや外部ソース(外部コンサルタントが提供するユーザープロファイルデータなどを含む)からデータを取り込むために、バックエンドツールやユーティリティが使用されます。

これらのツールは、以下のようなETL処理を担当します。

  • 抽出(Extraction):業務システムや外部ソースからデータを取得する
  • クレンジング(Cleaning):データの誤りや不整合を修正する
  • 変換(Transformation):複数ソースの同一データを統一フォーマットへ変換・統合する
  • ロード/リフレッシュ(Load & Refresh):データウェアハウスへの格納と更新を行う

データの抽出には、「ゲートウェイ」と呼ばれるアプリケーションプログラムインターフェース(API)が利用されます。ゲートウェイは基盤となるDBMSによってサポートされており、クライアントプログラムがサーバー上で実行されるSQLコードを生成できるようにします。代表的なゲートウェイとしては、MicrosoftのODBC(Open Database Connectivity)やOLEDB(Object Linking and Embedding for Databases)、Java環境向けのJDBC(Java Database Connectivity)などが挙げられます。

さらに、この層にはメタデータリポジトリも含まれており、データウェアハウス自体やその内容に関する情報(メタデータ)を保存しています。

ミドル層:OLAPサーバー

ミドル層はOLAP(Online Analytical Processing)サーバーであり、主に以下の2つのモデルのいずれかで実装されます。

  • ROLAP(Relational OLAP):リレーショナルDBMSを拡張したモデルです。多次元データに対する操作を標準的なリレーショナル操作にマッピングして処理します。
  • MOLAP(Multidimensional OLAP):多次元データとその操作を直接処理する専用サーバーのモデルです。

トップ層:フロントエンドクライアント層

トップ層は、ユーザーが直接操作するフロントエンドクライアント層です。クエリツールやレポーティングツール、分析ツールに加え、トレンド分析や予測といったデータマイニングツールも含まれます。

データウェアハウスの3つの実装モデル

アーキテクチャの観点から見ると、データウェアハウスには「エンタープライズウェアハウス」「データマート」「仮想ウェアハウス」という3つのモデルがあります。

エンタープライズウェアハウス

組織全体にまたがるすべての主題に関するデータを収集するウェアハウスです。1つ以上の業務システムや外部データプロバイダからの全社規模のデータ統合をサポートし、部門横断的なスコープを持ちます。

詳細データとサマリーデータの両方を含み、規模は数ギガバイトから数千ギガバイト(テラバイト級)に及ぶこともあります。従来型のメインフレーム、スーパーサーバー、あるいは並列アーキテクチャプラットフォーム上で構築されます。大規模なビジネスモデリングが必要となり、設計・構築には数年を要する場合もあります。

データマート

特定のユーザーグループにとって価値のある、全社データのサブセットを含むウェアハウスです。スコープは選択された主題に限定されます。たとえば、マーケティング部門向けのデータマートでは、顧客・商品・売上といった主題に絞り込まれます。データマートに含まれるデータは、要約されている傾向があります。

仮想ウェアハウス

業務データベース上に定義されたビュー(views)の集合です。効率的なクエリ処理のため、多数のサマリービューのうち一部だけを物理的に実体化(マテリアライズ)します。構築は比較的容易ですが、業務データベースサーバーの余剰キャパシティに依存する点が課題となります。

まとめ

3層データウェアハウスアーキテクチャは、データの蓄積(ボトム層)、多次元分析処理(ミドル層)、ユーザーへの提供(トップ層)を明確に分離することで、スケーラブルかつ柔軟なデータ分析基盤を実現します。組織の規模や目的に応じて、エンタープライズウェアハウス、データマート、仮想ウェアハウスのいずれかのモデルを適切に選択することが重要です。

  1. データウェアハウスのチューニングとは?基礎知識と最適化の手順を解説

    データウェアハウスとはデータウェアハウジングとは、複数のソースからデータを収集・管理し、ビジネスにとって意味のある洞察(インサイト)を提供するためのアプローチです。データウェアハウスは、経営層の意思決定を支援することを目的として特別に設計されています。簡単に言えば、データウェアハウスとは、組織の運用系(オペレーショナル)データベースから独立して運用されるデータベースのことです。データウェアハウスシステムを利用することで、複数のアプリケーションシステムを統合でき、分析用に整理された履歴情報の堅牢なプラットフォーム上でデータ処理を行うことが可能になります。データウェアハウスは、データを多次元空間の

  2. データウェアハウス設計とは?基本概念と4つの設計視点を解説

    データウェアハウスとはデータウェアハウスとは、複数の情報源からデータを収集・管理し、ビジネスにおける重要なインサイト(洞察)を支えるための仕組みです。経営層の意思決定を支援することを目的として特別に構築されており、日常業務で使われる運用データベースとは切り離して管理されます。データウェアハウスシステムは複数のアプリケーションシステムの統合を実現し、分析用に統合された過去のレコードを蓄積する堅牢なプラットフォームを提供することで、データ処理を支えます。データウェアハウスは、リモートにある基盤データ上に定義された「マテリアライズドビュー(実体化ビュー)」の集合体と捉えることができます。クエリが発行