データレイクとデータ ウェアハウス: これらの 4 つの主な違いをご存知ですか?
公開: 2023-03-27企業はデータ ブームを目の当たりにしており、新しいインフラストラクチャとデータ管理機能も求められています。 2022 年の調査によると、現状では、ほとんどの企業が IT 予算の 30% 以上をデータ ストレージ、バックアップ、災害復旧に費やしています。これは、構造化データセットと非構造化データセットの両方に及びます。
データ操作に関連する 2 つの重要な概念は、レイクとウェアハウスです。 これらにはいくつかの共通点があります。たとえば、両方ともストレージに使用され、両方ともクラウドと相互運用可能です。 ただし、データ レイクとデータ ウェアハウスの違いを知っておくと、それらの使用を最適化するのに役立ちます。 たとえば、データレイクは、ウェアハウスよりも非構造化 (「ビッグ」) データに適しています。
この点と、データ レイクとデータ ウェアハウスのその他の相違点について説明する前に、それぞれの概念について簡単に説明します。
データレイクとは?
データ レイクは、使用に必要になるまで大量の未処理データを含む、大規模で非常にスケーラブルなストレージ センターです。
アカウントまたはファイルのボリュームやサイズに制限はなく、特定のユース ケースもありません。 そのため、あらゆる種類のデータが含まれる可能性があります。 データは、未処理、半構造化、または構造化されている可能性があり、さまざまなソースから取得される可能性があります。 必要に応じて、データ レイクからデータを取得できます。
大量のデータを収集して保存し、その時点で処理または分析する必要がある場合は、データ レイク モデルを使用できます。 データ サイエンティストまたはエンジニアは、データ レイクのエンド ユーザーです。
複数のソースの一元化は、データ レイクの主なメリットです。 ただし、いくつかの欠点も覚えておく必要があります。 データ セキュリティとアクセス管理は、データ レイクにとって最大のリスクです。 プライバシーが要求される可能性があるため、データが監視なしに湖に投棄されると脅威になります。
さらに、データの品質に問題がある可能性があります。 十分な検討と注意を払わないと、データ レイクは、明確な識別やインデックスのない、使用不可能で構造化されていないデータの沼地に退化する可能性があります。
データ ウェアハウスとは
データ レイクとは異なり、データ ウェアハウスは、運用ソースと外部ソースの両方からのエンタープライズ データの膨大な選択です。 情報は、特定の目的のためにすでに構造化され、フィルター処理され、整理されています。
データ ウェアハウスは、中規模および大規模企業の部門固有のデータベース間での情報の交換を促進するためによく使用されます。 製品、注文、顧客、在庫、従業員などの要素に関する情報を保持できます。 起業家とビジネス消費者は、データ ウェアハウスのエンド ユーザーです。
有用なビジネス情報を得るために、ほとんどの企業は、さまざまなプラットフォームで開発された多くのサブシステムからデータを集約する必要があります。 この問題は、組織のすべてのデータを一元化されたリポジトリに統合し、単一のサイトからのアクセスを可能にするデータ ウェアハウジングによって解決されます。
データ ウェアハウスを使用する際に考慮すべきいくつかの欠点があります。 継続的なデータのクリーニング、変換、および統合が必要です。 企業が達成しようとする多くの (時には矛盾する) 目標のために、実装は困難を伴う場合があります。
さらに、データ ウェアハウスでは、IT および運用システムの再構成が必要になる場合があります。
ご覧のとおり、データ レイクとデータ ウェアハウスにはそれぞれ長所と短所があります。 それぞれのシステムを適切に使用するには、両者の違いを知ることが重要です。
データレイクは非構造化データをサポートしますが、ウェアハウスはサポートしません
これはおそらく、データ レイクとデータ ウェアハウスの最大の違いです。
データ レイクでは、生データは元の形式で保存されます。 モノのインターネット (IoT) デバイス ログ (テキスト)、写真 (.png、.jpg)、ビデオ (.mp4、.wav など) などの半構造化および非構造化データ、およびその他の構造化された形式のトランザクションに加えて、顧客関係管理 (CRM) やエンタープライズ リソース プランニング (ERP) システムから受け取った情報や、ソーシャル メディアのおしゃべりなどのビッグ データも組み込むことができます。
対照的に、データ ウェアハウスは、構造化照会言語 (SQL) 照会を使用してアクセス可能な、テキスト、数値、およびその他の形式のデータを保管する場合があります。 これは、ウェアハウスに格納されているデータのカテゴリが、リレーショナル データベースにあるものと同等であることを示しています。
データ ウェアハウスに保存されているデータの大部分は構造化されていますが、データ レイクを使用すると、整理されていない、半構造化された、構造化された情報を格納できます。 ただし、Snowflake (バリアントとオブジェクトのデータ型を備えている) などの特定のデータセットは、半構造化データも格納できます。
データ ウェアハウスは、非構造化リソースと半構造化リソースの両方からの情報を保存できますが、それは変換された後に限られます。
(また読む: データプライバシーとデータセキュリティ)
データ レイクは Schema-on-Read を使用し、データ ウェアハウスは Schema-on-Write を使用します
スキーマは、データの形式化された編成を記述します。 データ レイクはスキーマ オン リードの恩恵を受けます。 そのため、データを受信するたびに形式と構造が指定されますが、データ レイクにクエリを実行する前に設定されるビッグオー (関数の順序) ルールはありません。
ウェアハウスとは対照的に、レイクはスキーマ オン ライトを採用していません。つまり、データ ウェアハウスに転送する前に、データの構造と編成を指定する必要があります。
対照的に、データ アーキテクトまたはデータ オペレーターは、データ ウェアハウスのデータ フレームワークに多大な労力を投資する必要があります。 これは、データ アナリストがデータ構造を簡単に利用してレポートできるようにする必要があるためです。 これは、正規化または非正規化されたテーブル、およびスター スキーマとスノーフレーク スキーマの両方をカバーします。 データ モデルは研究およびビジネス インテリジェンス用に準備する必要があるため、スキーマ オン ライトが使用されます。
データ レイクとデータ ウェアハウスのこの違いは、1 つの重要な事実に由来します。レイクには、企業が必要とするすべてのデータがあり、後で使用する可能性があり、決して使用しない可能性があります。 反対に、データ ウェアハウスは、最終的に格納する素材を吸収する前に細心の注意を払って選択します。
データ ウェアハウスは ETL ワークフローを使用し、通常はより高価です
データをウェアハウスに転送するには、抽出、変換、ロード (ETL) メソッドが使用されます。 これらは実行されたアクションです:
- 生データ ソースから情報を取得する
- データの除染と解釈
- 運用データ リポジトリへのマテリアルの追加
対照的に、データレイクは ELT アプローチを使用します。 必要に応じて、データ アナリストまたはアーキテクトが分析後にデータを変更します。 データ レイクとデータ ウェアハウスのこの違いは、もう 1 つの重要な要因に寄与します。データ レイクは、スケーラブルで安価なコモディティ サーバーと、低コストの特殊な層を備えたクラウド主導のオブジェクト ストレージを使用して問題を解決できます。 これにより、保存されたデータのギガバイトあたりの価格が下がります。
対照的に、データ ウェアハウスは、分析クエリを実行するために必要な追加の処理リソースと、その保存費用のために、はるかに高価です。 また、ELT の代わりに ETL を使用すると、追加費用が発生します。
データ レイクは使いやすいが、ウェアハウス内のデータはすぐに使用できる
「使いやすさ」という言葉は、データ リポジトリに格納されているデータではなく、データ リポジトリの全体的な使いやすさを指します。 データ レイクのアーキテクチャには明確な構造がないため、簡単にアクセスして変更できます。 さらに、データレイクには制限がないため、ユーザーはデータをすばやく変更できます。 定義上、データ ウェアハウスはより構造化されています。
データ ウェアハウスでのデータの処理と編成により、データの解釈と利用がより簡単になります。 ウェアハウスに保存された各情報は、特定の目的のために保存されており、フィルタリングおよび処理されたデータのみがそこに保存されます。 つまり、決して使用されない可能性のある情報のためにスペースが浪費されることはなく、データはすべて使用可能な状態になっています。
しかし、構造的な制限により、データ ウェアハウスの変更は困難で費用がかかります。
おわかりのように、データ レイクとデータ ウェアハウスの両方がビジネスに重要なメリットをもたらします。 ビッグデータを定期的に扱う場合、レイクは必須です。 対照的に、ウェアハウスは BI と分析を強化するために不可欠であり、最良の結果を得るために 2 つを並べて使用することがよくあります。