データ ウェアハウスとは
まず、データ ウェアハウスとは何で、なぜ組織でこれが使用されるかを定義しましょう。
データ ウェアハウスとは、レポートと分析を目的として構造化データ (データベース テーブル、Excel シート) や半構造化データ (XML ファイル、Web ページ) を格納する一元的なリポジトリです。データはさまざまなソースから、たとえば販売時点管理システム、ビジネス アプリケーション、リレーショナル データベースから取り込まれ、通常はクリーニングと標準化の後にウェアハウスに到達します。データ ウェアハウスには大量の情報を格納できるため、豊富な履歴データにユーザーがアクセスするのが簡単になり、データ マイニングや、データの視覚化、およびその他の形のビジネス インテリジェンス レポートに使用できます。
データ ウェアハウスの利点
信頼性の高いデータは、特にそれが長年にわたって蓄積されていれば、ユーザーが組織の運営に関してより多くの情報に基づくスマートな意思決定を行うのに役立ちます。そして、データ ウェアハウスによってこのことが実現します。エンタープライズ データ ウェアハウスの利点は無数にありますが、特にインパクトの大きい利点を次に示します。
-
複数のソースからのデータを統合して 1 つの "信頼できる唯一の情報源" を作る
-
数か月あるいは数年にわたる長期的な履歴データを保存して分析する
-
データをクレンジングおよび変換して、正確で一貫性があり構造と形式が標準化された状態にする
-
データの収集と分析の処理のときのクエリ時間を短縮する (これによってシステムの全体的なパフォーマンスが向上します)
-
デプロイやインフラストラクチャのコストを負担することなく、データを効率的に読み込む
-
データが非公開で、保護された安全な状態となるようにセキュリティを保つ
-
データ マイニング、視覚化ツール、およびその他の形態の高度な分析を通して分析できるようにデータを準備する
データ ウェアハウスとデータ レイクの比較
データ ウェアハウスは、どの組織の分析オペレーションにも不可欠であることは明らかです。しかし、データ ウェアハウスと他の種類のデータ リポジトリ、たとえばデータ レイクとは、何が異なるのでしょうか? それぞれを、どのようなときに使用すべきでしょうか?
リポジトリとして、データ ウェアハウスと データ レイク のどちらもデータの保存と処理に使用されます。機能は同じように見えるかもしれませんが、それぞれに特有のユース ケースがあります。このような理由から、組織は一般的に両方のシステムを採用して完全なエンドツーエンドのソリューションを形成し、幅広い目的に対応できるようにしています。
データ ウェアハウスは本質的にリレーショナルです。つまり、データの構造またはスキーマは、事前定義されたビジネスおよび製品の要件によって決定し、これらの要件は SQL クエリ操作に合わせてキュレーション、適合化、最適化されます。したがって、データ ウェアハウスの最適な用途は、特定の目的 (たとえば BI 分析用のデータ マイニング) を念頭に置いて処理されたデータを格納することや、既に特定されているビジネス ユース ケースのソースとすることです。
データ ウェアハウスと同様に、データ レイクでは構造化と半構造化のデータが保持されます。その他にも、さまざまな非リレーショナルのソース (たとえばモバイル アプリ、IoT デバイス、ソーシャル メディア、ストリーミング) からの生の、未処理データにも対応できます。この理由は、データ レイク内の構造またはスキーマがデータの読み取りの時点で定義されるからです。柔軟でスケーラブルな性質を持つことから、データ レイクはインテリジェントな形式のデータ分析 (たとえば機械学習) の実行によく利用されます。
データ レイク | データ ウェアハウス | |
---|---|---|
種類 | 構造化、半構造化、非構造化 | 構造化 |
スキーマ | スキーマ オン リード | スキーマ オン ライト |
形式 | 生、フィルター処理なし | 処理済み、審査済み |
ソース | ビッグ データ、IoT、ソーシャル メディア、ストリーミング データ | アプリケーション、ビジネス、トランザクション データ、バッチ レポート |
スケーラビリティ | スケーリングは簡単で低コスト | スケーリングは難しくコストがかかる |
ユーザー | データ科学者、データ エンジニア | データ ウェアハウス プロフェッショナル、ビジネス アナリスト |
ユース ケース | 機械学習、予測分析、リアルタイム分析 | コア レポート、BI |
データ ウェアハウスのアーキテクチャと設計
ここまで、データ ウェアハウスを使用する理由と、いつ使用すべきかを学びました。次にデータ ウェアハウスの設計に注目して、そのしくみを詳しく見てみましょう。データ ウェアハウスは、単独で運用される単一のサイロというだけのものではありません。高度に構造化され、入念に設計されたアーキテクチャを持つシステムであり、複数の層で構成されています。これらの層がユーザーのデータと、および他の層と相互作用しますが、その方法は層ごとに異なります。一般的には、次の層があります。
最下位層
データが複数のソースから取り込まれ、このデータがクレンジングされて、他のアプリケーションで使用できるように変換されます。このプロセスを抽出、変換、読み込み (extract, transform, and load: ETL) といいます。最下位層では、データの格納と最適化も行われます。これによってクエリ時間が短縮され、全体的なパフォーマンスが向上します。
中間層
ここに分析エンジン (オンライン分析処理 (OLAP) サーバーとも呼ばれます) が存在します。OLAP サーバーは、データ ウェアハウスからの大量のデータに高速でアクセスできるので、結果が瞬時に得られます。
最上位層
最上位層では、処理済みのデータがフロントエンド インターフェイスによって視覚的に提示されます。アナリストはこれにアクセスして使用し、自分のレポート作成とセルフサービス BI のニーズを満たすことができます。
データ ウェアハウスを構築する方法
データ ウェアハウスを設計して構築するときは、組織の目標 (長期的とアドホックの両方) と、データの性質を考慮することが重要です。統合しようとしているデータ ソースの数はいくつですか? ワークフローの自動化を計画していますか? データの探索と分析はどのように行いますか? 実際の構築物は、ニーズの複雑さによって異なりますが、一般的なエンタープライズ データベース ウェアハウスを構成するコンポーネントは次のものが考えられます。
- データ ソース: これによって販売時点管理システム、ビジネス アプリケーション、およびその他のリレーショナル データベースからオペレーショナル データを抽出します。
- ステージング領域: ここでデータがクリーニングされて、ウェアハウスまたは一元化リポジトリに合わせて変換されます。
- ウェアハウスまたは一元化リポジトリ: 処理済みのオペレーショナル データ、メタデータ、要約データ、生データがここに格納され、ユーザーが簡単にアクセスできるようになります。
- データ マートの追加: 一元化リポジトリからデータの一部を取り出して、特定のユーザー グループに提供することができます。
- サンドボックス: データ科学者が新しい形態のデータ探索を、保護された環境で試すのに使用できます。
- 統合、ストレージ、パフォーマンス、分析のためのさまざまなデータ ウェアハウス ツール、フレームワーク、API
データ ウェアハウスのツール、ソフトウェア、リソース
今日のデータ中心の世界では、多数の大手ソフトウェア企業が無限とも思える広範なデータ ウェアハウス ソフトウェアを販売しており、それぞれに固有のユース ケースがあります。困難に思われるかもしれませんが、まとまりのある高パフォーマンスのソリューションを構築するには、適切なツールとテクノロジに投資する必要があります。組織ごとにニーズは異なりますが、注目すべき重要なデータ ウェアハウス製品を次に示します。
クラウドおよびハイブリッド クラウド データ ウェアハウス
統合された、クラウドベースのデータ ウェアハウス ソリューション、たとえば Azure Synapse Analytics を利用すると、スケーリング、コンピューティング、格納をより速く、より低コストでできるようになります。
データ統合ツール
ETL パイプラインを使用するとワークフローの作成、スケジューリング、オーケストレーションが可能になり、これでソース データを自動的に統合、クレンジング、標準化することができます。
オブジェクト ストレージ
オブジェクト ストレージ ソリューションは、大量の構造化、半構造化、非構造化のデータを保持できるため、ソース データをウェアハウスに読み込む前にステージングするのに理想的です。
ウェアハウス ツール
分散ストレージ ソリューションを利用すると、リレーショナル テーブル内の大量のデータ セットを列指向ストレージで保持することができます。これによって大幅にコストが低下し、クエリのパフォーマンスが向上し、インサイトを得るまでの時間が短縮されます。
パフォーマンス ツール
アプリケーションのパフォーマンスを向上させるには、Apache Spark を取り入れることをおすすめします。このオープンソースの並列処理フレームワークでは、メモリ内処理がサポートされます。
リソースとワークロードの管理
リソース マネージャーによってコンピューティング パワーがワークロードに割り当てられるので、それに応じてデータの読み込み、分析、管理、エクスポートを行うことができます。
データ モデリング
データ モデリングによって、複数のデータ ソースが結合されて 1 つのセマンティック モデルが作成されるため、構造化された状態で効率的にデータを見ることができます。
ビジネス インテリジェンス ツール
ビジネス分析ツールを利用すると、インサイトをダッシュボード、レポート、およびその他の視覚化ツールの形でユーザーに提示することができます。
セキュリティとプライバシーの機能
セキュリティとコンプライアンスの機能 (データ暗号化、ユーザー認証、アクセス監視など) によって、データが確実に保護されます。
Azure SQL Data Warehouse はどうなりましたか?
Azure SQL Data Warehouse に関連付けられている機能は Azure Synapse Analytics の機能の 1 つとなり、"専用 SQL プール" と呼ばれるようになりました。現在 Azure SQL Data Warehouse をご利用のお客様は、Azure Synapse Analytics の専用 SQL プール機能を使用して引き続き既存の Azure SQL Data Warehouse ワークロードを実行でき、変更は一切必要ありません。また、お客様の既存のウェアハウス データについて、Azure Synapse Analytics での管理を開始して高度な分析機能 (サーバーレス データ レイク探索や、統合された SQL および Apache Spark™ のエンジンなど) を活用することもできます。
よく寄せられる質問
-
データ ウェアハウスとは、レポート、分析、およびその他の形のビジネス インテリジェンスを目的として構造化データ (データベース テーブル、Excel シート) や半構造化データ (XML ファイル、Web ページ) を保持する一元的なリポジトリです。
-
データ ウェアハウスの使用には、多くの利点があります。たとえば、データ ウェアハウスによって複数のデータ ソースが統合されて "信頼できる唯一の情報源" が作られるため、組織はこれを使用してビジネスとオペレーションに関する意思決定を、より多くの情報に基づいて行うことができます。
-
データ ウェアハウスには構造化と半構造化のデータが格納され、データ マイニング、データ視覚化、およびその他の特定の BI ユース ケースのソースとして使用できます。データ レイクにはさまざまな種類の生データが格納され、データ科学者のさまざまなプロジェクトのソースとして使用できます。
-
データ ウェアハウスは一般的に、複数の層で構成されます。最下位層でデータが収集されて格納され、中間層でデータが分析され、最上位層でデータが表示されてユーザーがこれにアクセスして解析することができます。
-
データ ウェアハウスのインフラストラクチャを設計して構築するときは、自分のデータの性質と、そのデータをどのように変換したいかを考慮することが重要です。一般的な構築物の要素としては、データ ソース、ステージング領域、ウェアハウス本体、データ マート、サンドボックス、およびさまざまな統合ツールがあります。
-
多数の大手ソフトウェア企業が現在、広範なデータ ウェアハウス製品を販売しています。
-
これらの機能は Azure Synapse Analytics の機能の 1 つとなり、"専用 SQL プール" と呼ばれるようになりました。現在 Azure SQL Data Warehouse をご利用のお客様は引き続きワークロードをここで実行でき、変更は一切必要ありません。