データレイクとは何か?定義、 Archi構造とベストプラクティス

⚡ スマートサマリー

データレイクアーキテクチャは、構造化データ、半構造化データ、非構造化データをフラットな設計でネイティブ形式で格納します。各要素には一意の識別子とメタデータタグが付与されるため、事前に定義されたエンタープライズスキーマなしで分析を行うことができます。

  • 🗄️ コア定義: アカウントサイズやファイル数に固定の制限がなく、あらゆるデータタイプを未加工の状態で格納するリポジトリ。
  • 🏗️ 階層構造: 取り込み、保管、蒸留、処理、洞察、および統合運用の6つのアーキテクチャ階層が構成されます。
  • 🔑 主要コンポーネント: 取り込み、保存、ガバナンス、セキュリティ、品質、発見、監査、データ系統、および探索は、連携して機能する必要がある。
  • 📈 成熟度パス: 組織がデータを取り込む段階から、データレイク内での完全な企業統治へと移行するには、4つの段階を経る必要があります。
  • <XNUMXxEXNUMX><XNUMXxEXNUMX><XNUMXxXNUMXA><XNUMXxXNUMX><XNUMXxXNUMXA>️️ 倉庫の対比: データサイエンティスト向けには、データレイクは読み取り時にスキーマを適用し、ビジネスレポート作成向けには、データウェアハウスは書き込み時にスキーマを適用します。
  • ⚠️ 主なリスク: アクセス制御の弱さと監視の欠如は、管理されていない湖を、使い物にならないデータの沼へと変えてしまう。

データレイクとは Archi構造

データレイクとは何ですか?

データ レイクは、大量の構造化データ、半構造化データ、および非構造化データを保存できるストレージ リポジトリです。 アカウント サイズやファイルに固定の制限がなく、あらゆる種類のデータをネイティブ形式で保存する場所です。 大量のデータを提供して、分析パフォーマンスとネイティブ統合を向上させます。

データ レイクは、実際の湖や川に非常によく似た大きなコンテナのようなものです。湖に複数の支流が流れ込むのと同じように、データ レイクには構造化データ、非構造化データ、マシン間、ログがリアルタイムで流れています。

データレイク
データレイク

上の図に示すように、多数の独立したデータストリームが単一のデータ群に流れ込みます。データレイクはデータを民主化し、組織のすべてのデータを後で処理するために費用対効果の高い方法で保存します。リサーチアナリストは、データそのものではなく、データ内の意味のあるパターンを見つけることに集中できます。

階層構造とは異なります データウェアハウス データはファイルとフォルダーに保存されますが、データ レイクはフラットなアーキテクチャです。データ レイク内のすべてのデータ要素には一意の識別子が付与され、メタデータ情報のセットがタグ付けされます。

なぜデータレイクなのか?

データ レイクを構築する主な目的は、データの純粋なビューをデータ サイエンティストに提供することです。

データ レイクを使用する理由は次のとおりです。

  • のようなストレージエンジンの登場により、 Hadoopの さまざまな情報を保存することが容易になりました。 Data Lake を使用してデータを企業全体のスキーマにモデル化する必要はありません。
  • データ量、データ品質、メタデータの増加に伴い、分析の品質も向上します。
  • データ レイクはビジネスの俊敏性を提供します
  • 機械学習 人工知能を使用すると、収益性の高い予測を行うことができます。
  • これは、導入組織に競争上の優位性をもたらします。
  • データサイロ構造はありません。 Data Lake は顧客の 360 度のビューを提供し、分析をより堅牢にします。

データレイク Archi構造

データレイク Archi構造
データレイク Archi構造

この図はビジネス データ レイクのアーキテクチャを示しています。下位レベルは主に保存されているデータを表し、上位レベルはリアルタイムのトランザクション データを表します。このデータは、システム内をほとんどまたはまったく遅延なく流れます。以下は、データ レイクの重要な層です。 Archi構造:

  1. インジェスト層: 左側の層はデータ ソースを表します。 データはバッチまたはリアルタイムでデータ レイクにロードできます。
  2. インサイト層: 右側の階層は、システムからの洞察が使用される研究側を表します。 SQL、NoSQL クエリ、さらには Excel をデータ分析に使用することもできます。
  3. HDFS は、構造化データと非構造化データの両方に対してコスト効率の高いソリューションです。 これは、システム内に保存されているすべてのデータのランディング ゾーンです。
  4. 蒸留層 ストレージ層からデータを取り出し、分析しやすいように構造化データに変換します。
  5. 処理層 分析アルゴリズムとユーザークエリをさまざまなリアルタイム、インタラクティブ、バッチで実行し、構造化されたデータを生成することで、分析を容易にします。
  6. 統合運用層 システムの管理と監視を管理します。 これには、監査と熟練度管理、データ管理、 ワークフロー管理.

キーデータレイク Concepts

以下は、データレイクを完全に理解するために理解する必要がある主要なデータレイクの概念です。 Archi構造

データの取り込み

データ インジェストにより、コネクタはさまざまなデータ ソースからデータを取得し、データ レイクに読み込むことができます。

データ取り込みは以下をサポートします。

  • あらゆる種類の構造化データ、半構造化データ、非構造化データ。
  • バッチ、リアルタイム、ワンタイムロードなどの複数の取り込み。
  • データベース、ウェブサーバー、電子メールなどの多くの種類のデータソース IoT、FTP。

データストレージ

データ ストレージはスケーラブルであり、コスト効率の高いストレージを提供し、データ探索への高速アクセスを可能にする必要があります。 さまざまなデータ形式をサポートする必要があります。

データガバナンス

データ ガバナンスは、組織内で使用されるデータの可用性、使いやすさ、セキュリティ、整合性を管理するプロセスです。

セキュリティ

セキュリティはデータレイクのすべての層に実装する必要があります。 それは、保管、発掘、消費から始まります。 基本的に必要なのは、権限のないユーザーのアクセスを停止することです。 簡単にナビゲートできる GUI とダッシュボードを使用してデータにアクセスするためのさまざまなツールをサポートする必要があります。

認証、アカウンティング、認可、データ保護は、データ レイク セキュリティの重要な機能です。

データ品質

データ品質はデータレイクアーキテクチャの重要な構成要素です。データはビジネス価値を確定するために使用されます。例trac質の低いデータから洞察を得ようとすると、質の低い洞察しか得られない。

データ発見

データ検出は、データの準備や分析を開始する前のもう XNUMX つの重要な段階です。 この段階では、タグ付け技術を使用して、データ レイクに取り込まれたデータを整理して解釈することで、データの理解を表現します。

データ監査

データ監査の主なタスクは2つあります。 tracキングはキーデータセットに変更を加えます。

  1. Tracking 重要なデータセット要素の変更
  2. これらの要素をいつ、誰がどのように変更するかを記録します。

データ監査は、リスクとコンプライアンスの評価に役立ちます。

データ系統

このコンポーネントは、データの起源を扱います。主に、データが時間とともにどのように移動し、どのような変化を遂げるかを扱います。これにより、データ分析プロセスにおけるエラー修正が、発生源から宛先まで容易に行えるようになります。

データ探査

データ分析の初期段階です。 データ探索を開始する前に、適切なデータセットを特定することが重要です。

データ レイクの構築において重要な役割を果たすには、すべての所定のコンポーネントが連携して環境を簡単に進化させ、探索する必要があります。

人気のデータレイクプラットフォーム

上記で説明した階層は、通常、ゼロから構築するのではなく、マネージドクラウドサービスを組み合わせて構成されます。以下のプラットフォームは、ほとんどの実装で最初に必要となるストレージおよびカタログ化のレイヤーをカバーしています。

  • Amazon AWS Lake Formationを使用したS3: オブジェクトストレージは、ソースを登録し、権限を設定し、データカタログを構築するサービスと組み合わされています。 AWSチュートリアル より広範な生態系のために。
  • Azure データレイクストレージ第2世代: Blob Storageの上に階層型の名前空間を追加することで、ディレクトリレベルのセキュリティと高速な分析アクセスを実現します。
  • Google Cloud BigLakeによるストレージ: オブジェクトストレージと、オープンテーブル形式を直接読み込むクエリ層を組み合わせたものです。
  • Apache HadoopとHDFS: 従来からあるオンプレミス方式で、データがプライベートデータセンター内に保持される必要がある場合に現在も使用されています。
  • DatabricksとSnowflake: テーブル形式をレイヤー化するプラットフォーム Delta オブジェクトストレージ上にLakeとApache Icebergを導入し、トランザクションとバージョン管理機能を追加する。

選択は通常、組織が既に利用しているクラウドプロバイダーに従います。 ビジネスインテリジェンスツール 単一のエコシステム内に最も低コストで統合する。

データレイクの成熟段階

データ レイクの成熟段階の定義は、教科書によって異なります。ただし、要点は同じです。成熟に続いて、段階の定義は素人の観点から行われます。

ステージ 1: 大規模なデータの処理と取り込み

データ成熟度のこの最初の段階には、データの変換と分析の能力の向上が含まれます。 ここで、ビジネス オーナーは、より多くのデータを取得し、分析アプリケーションを構築するために、自分のスキルセットに応じたツールを見つける必要があります。

ステージ 2: 分析力の構築

これは第 XNUMX 段階であり、データの変換および分析能力の向上が含まれます。 この段階では、企業は自社のスキルセットに最も適したツールを使用します。 彼らはさらに多くのデータを取得し、アプリケーションを構築し始めます。 ここでは、エンタープライズ データ ウェアハウスとデータ レイクの機能が併用されます。

ステージ 3: EDW とデータ レイクが連携して動作する

このステップには、データと分析をできるだけ多くの人に届けることが含まれます。 この段階では、データ レイクとエンタープライズ データ ウェアハウスが連携して動作し始めます。 どちらも分析においてそれぞれの役割を果たしています

ステージ 4: 湖におけるエンタープライズ機能

データ レイクのこの成熟段階では、エンタープライズ機能がデータ レイクに追加されます。 情報ガバナンス、情報ライフサイクル管理機能、およびメタデータ管理の導入。 ただし、このレベルの成熟度に到達できる組織はほとんどなく、将来的にはこの数は増加するでしょう。

データ レイク実装のベスト プラクティス

  • Archi構造コンポーネント、それらの相互作用、および識別された製品はネイティブ データ型をサポートする必要があります
  • データ レイクの設計は、何が必要かではなく、何が利用できるかによって推進される必要があります。 スキーマとデータの要件は、クエリされるまで定義されません。
  • 設計は、サービス API と統合された使い捨てコンポーネントによってガイドされる必要があります。
  • データの検出、取り込み、保存、管理、品質、変換、視覚化は個別に管理する必要があります。
  • データレイクアーキテクチャは特定の業界に合わせて調整する必要があります。そのドメインに必要な機能が設計の本質的な部分であることを確認する必要があります。
  • 新しく発見されたデータソースをより迅速にオンボーディングすることが重要です
  • データレイクは、カスタマイズされた管理を支援します。tract の最大値
  • データ レイクは、既存のエンタープライズ データ管理技術と方法をサポートする必要があります。

データレイク構築の課題:

  • Data Lake ではデータ量が増えるため、プロセスはプログラムによる管理にさらに依存する必要があります
  • まばらで不完全な揮発性のデータを扱うのは難しい
  • より広範囲のデータセットとソースには、より大規模なデータ ガバナンスとサポートが必要です

⚠️ 警告: メタデータが整理されておらず、アクセスルールが適用されていないデータ湖は、データ沼と化してしまう。データは存在するものの、誰もそれを見つけることも、信頼することも、誰が変更したかを証明することもできない。したがって、ガバナンスは後の段階ではなく、立ち上げ段階から必須の要件となる。

データレイクとデータウェアハウスの違い

以下の比較表は、各店舗がどの位置にあるかをまとめたものです。より詳細な内訳は、 データレイクとデータウェアハウスの比較 比較。

技術パラメータ データレイク データウェアハウス
Rescale データ データレイクにはすべてが保存されます。 データ ウェアハウスはビジネス プロセスのみに焦点を当てています。
処理 データは主に未処理です 高度に処理されたデータ。
データの種類 非構造化、半構造化、構造化のいずれかになります。 ほとんどの場合、表形式と構造になっています。
仕事 データ管理を共有する データ取得用に最適化
アジリティ 機敏性が高く、必要に応じて構成および再構成が可能です。 データ レイクと比較すると、俊敏性が低く、構成が固定されています。
ユーザー データレイクは主にデータサイエンティストによって使用されます ビジネスプロフェッショナルはデータウェアハウスを広く利用しています
Storage データ レイクは、低コストのストレージ向けに設計されています。 応答時間が速い高価なストレージが使用されている
セキュリティ 制御性が低くなります。 データをより適切に制御できるようになります。
EDWの置き換え データレイクは EDW のソースになる可能性があります EDW を補完します (代替ではありません)
スキーマ 読み取り時のスキーマ (事前定義されたスキーマなし) 書き込み時のスキーマ (事前定義されたスキーマ)
情報処理 新しいデータの迅速な取り込みに役立ちます。 新しいコンテンツを導入するには時間がかかります。
データの粒度 低レベルの詳細または粒度のデータ。 概要または集計された詳細レベルのデータ。
ツール Hadoop/Map Reduce などのオープンソース/ツールを使用可能 主に商用ツールです。

データ レイクハウスとは何ですか?

上記の比較は、2つの独立したシステムを前提としています。データレイクハウスはこれらを1つに統合するため、現在のアーキテクチャに関する議論でこの用語がよく使われています。

湖畔の家は、低コストのオブジェクトストレージに生のファイルを保存し、オープンテーブル形式などを通じてトランザクションメタデータレイヤーを追加します。 Delta Lake、Apache Iceberg、またはApache Hudi。このレイヤーは、基となるファイルが開いている間、データウェアハウスが提供する保証を提供します。

機能 データレイク データレイクハウス
取引 サポートされていません テーブル上のACIDトランザクション
スキーマ処理 スキーマは読み取り専用です スキーマの適用と進化
主なユーザー データサイエンティスト アナリストとデータサイエンティストが一緒に
レポート速度 別倉庫がないと遅い インデックスとキャッシュを使用した直接クエリ

既に管理された湖を運用しているチームにとって、テーブル形式を採用することは、通常、再構築ではなく段階的なアップグレードとなる。

Data Lake を使用する利点とリスク

データ レイクを使用する主な利点は次のとおりです。

  • 実用化と高度な分析を全面的にサポートします
  • コスト効率の高い拡張性と柔軟性を提供します
  • 無制限のデータタイプから価値を提供します
  • 長期的な所有コストを削減
  • ファイルを経済的に保存できる
  • 変化に素早く対応できる
  • データレイクの主な利点は次のとおりです。 集中化 さまざまなコンテンツソースの
  • さまざまな部門のユーザーが世界中に分散している可能性があります。 柔軟なアクセス データに

データレイク使用のリスク:

  • しばらくすると、データレイクは重要性と勢いを失う可能性がある
  • データレイクの設計中には、より大きなリスクが伴います
  • 非構造化データは、統制不能な混乱、使用不可能なデータ、ばらばらで複雑なツール、そして企業全体のコラボレーションの弱体化につながる可能性があります。
  • ストレージとコンピューティングのコストも増加します
  • 以前のアナリストによる調査結果の系統が説明されていないため、データを使用した他の人から洞察を得る方法はありません。
  • データレイクの最大のリスクはセキュリティとアクセス制御です。 データの中にはプライバシーや規制上の必要性がある場合があるため、データを監視することなくレイクに置くことができる場合があります。

よくあるご質問

メタデータタグ、所有権、保持ルールがないファイルを取り込むと、ユーザーはどのデータセットが最新で信頼できるかを判断できなくなるため、誰もクエリしない重複データがデータレイクに蓄積されてしまう。

ParquetやORCのようなカラム型フォーマットは圧縮率が高く、クエリは必要なカラムのみを読み取ることができます。JSONやCSVは、変換前の生データ領域では依然として有用です。

モデルのトレーニングには、多様で膨大な量の生データが必要であり、湖はまさにそのようなデータを保存する場所である。チームはデータウェアハウスからエクスポートするのではなく、オブジェクトストレージから直接読み込む。

はい。AIサービスは受信ファイルをスキャンし、スキーマを推論し、メタデータタグを提案し、個人データと思われる列にフラグを立てます。ポリシーが適用される前に、人間の担当者が分類を承認します。

ストレージライフサイクルルールを適用して、使用頻度の低いファイルをアーカイブ層に移動したり、小さなファイルを大きなファイルに圧縮したり、データをパーティション分割してクエリのスキャン回数を減らしたりします。通常、費用の大部分はストレージではなくコンピューティングに費やされます。