Skip to Content

Delta Lake とは?

Delta Lake は、データレイクの信頼性と性能を最適化するために設計されたオープンソースのデータ・ストレージ・フレームワークです。データの一貫性、データ品質、トランザクション性の欠如など、データレイクが直面する一般的な問題に対処します。その目的は、データ駆動型ビジネスにおいてスケーラブルなビッグデータ・ワークロードを処理できるデータ・ストレージ・ソリューションを提供することです。

Delta Lake の起源

Delta Lake は、Apache Spark の開発者によって設立された Databricks 社が 2019 年に発表したオープンスタンダードに基づいたクラウド・テーブル形式で、ACID 保証、並行書き換え、データの可変性など、最新のデータ・プラットフォームで求められる機能をサポートするため、部分的にオープンソースとして提供されました。

Delta Lake の目的または主な用途

Delta Lake は、構造化データと非構造化データの両方を大量に保持するデータレイクの使用をサポートし、強化するために構築されました。

データ・サイエンティストやデータ・アナリストは、データ・レイクを使用して、これらの大規模なデータセットを操作し、貴重な知見を抽出します。データレイクは、データの管理方法に革命をもたらしましたが、データ品質、データの一貫性、そして最も重要な点として、スキーマが強制されていないことなど、いくつかの制限も伴います。そのため、未加工データに対して機械学習や複雑な分析操作を実行することが難しくなります。

2021 年には、学界と技術分野のデータ・サイエンティストが、これらの制限により、データ・レイクは、データ・ウェアハウスと高度な分析を統合するオープン・プラットフォームであるレイクハウスに置き換えられるだろうと主張しました。

データレイク・ハウスのシステム設計

図 1:Michael Armbrust 氏、Ali Ghodsi 氏、Reynold Xin 氏、Matei Zaharia 氏による論文にあるデータ・レイクハウスのシステム設計例。Delta Lake は、オープンフォーマットでファイル上にトランザクション、バージョン管理、補助データ構造を追加し、多様な API やエンジンで照会できます。

Delta Lake は、主要なデータ・ストレージ・レイヤーを提供することで、あらゆるレイクハウス・インフラの重要な一部となっています。

Delta Lake とは

  • オープン性:コミュニティ主導の統合エコシステムが急速に拡大しています。
  • シンプルさ:単一のフォーマットで ETL、データ・ウェアハウス、機械学習をレイクハウスに統合できます。
  • 本番運用対応: 10,000 以上の本番運用環境でバトルテストされています。
  • プラットフォームに依存しない:クラウド、オンプレミス、ローカルを問わず、あらゆるクエリ・エンジンで使用できます。


Delta Lake、データレイク、データ・ウェアハウス、データ・レイクハウスの違い

Delta Lake は、データセンター、特にデータレイク、データ・ウェアハウス、データ・レイクハウスと並んで、より広い文脈の中で理解するのがベストです。詳しく見てみましょう。

Delta Lake

Delta Lake は、リアルタイム分析、人工知能(AI)、機械学習(ML)アプリケーションに必要な性能と俊敏性を犠牲にすることなく、元のデータの完全性を維持するオープンソース・ストレージ・レイヤーです。

データレイク

データレイクは、複数の形式の未加工データのリポジトリです。データレイク内の情報の量と多様性は、分析を困難にし、データの品質と信頼性を損なう可能性があります。

データ・ウェアハウス

データ・ウェアハウスは、複数のソースから情報を収集し、分析とレポート用に最適化された大量の構造化データに再フォーマットして整理します。独自のソフトウェアと非構造化データを保存できないことで、その有用性が制限されます。

データ・レイクハウス

データ・レイクハウスは、データレイクの柔軟性とスケーラビリティ、データ・ウェアハウスの構造と管理機能をシンプルでオープンなプラットフォームで組み合わせたモダンなデータ・プラットフォームです。

FlashBlade のテストドライブ

Pure1 のセルフサービス・インスタンスによる FlashBlade の管理を通じて、ネイティブなスケールアウトが可能なファイル/オブジェクト・ストレージの先進的機能をお試しいただけます。

テストドライブを申し込む

Delta Lake の仕組み

Delta Lake は、未加工データと処理エンジン間の抽象化レイヤーを追加することで機能します。データレイクの上にあり、ストレージ・システムを使用しています。データをバッチに分割し、バッチの上に ACID トランザクションを追加します。Delta Lake は、データ検証をレイクに追加する前にスキーマの強制を可能にします。

Delta Lake は、データを Parquet 形式で保存し、Hadoop Distributed File System(HDFS)または Amazon S3 をストレージ・レイヤーとして使用します。ストレージ・レイヤーは、不変の Parquet ファイルにデータを保存し、スキーマの進化を可能にするようにバージョン管理されています。

Delta Lake でインデックス作成を通じてデータ性能を向上させる方法

Delta Lake は、頻繁にアクセスされるデータの上にインデックスを作成することで、データ性能を向上させます。これらのインデックスは、データ取得時間の短縮と性能の最適化を可能にします。Delta Lake は、全てのデータベースでインデックス化を使用していますが、自動メタデータ解析と物理データ・レイアウトを組み合わせて、クエリを実行するためにスキャンされたファイル数を減らすという点でユニークです。

Delta Lake のアーキテクチャ

Delta Lake は、追加されたデータ・レイヤーであり、ラムダ・アーキテクチャの進化を表しています。ラムダ・アーキテクチャでは、ストリーミングとバッチ処理が並行して行われ、その結果がマージされてクエリ応答を提供します。この方法では、ストリーミングおよびバッチ・プロセスの保守と運用が複雑になり、困難になります。

Delta Lake は、ストリーミングとバッチのワークフローを、接続されたパイプラインを介して共有ファイル・ストアに統合した継続的なデータ・アーキテクチャを採用しています。格納されたデータ・ファイルには、「マルチホップ・アーキテクチャ」と呼ばれる 3 つのレイヤーがあり、データ・フローの下流に移動すると、データがより洗練されます。

  • ブロンズ・テーブル:モノのインターネット(IoT)システム、CRM、RDBMS、JSON ファイルなどの複数のソースから取り込まれた未加工データが含まれています。
  • シルバー・テーブル:変革と機能エンジニアリング・プロセスを経て、データのより洗練されたビューが含まれています。
  • ゴールド・テーブル:BI レポート、分析、機械学習プロセスのためのエンドユーザー向けです。
Delta Lake のアーキテクチャ

図 2:Delta Lake のアーキテクチャ

Delta Lake のメリット

Delta Lake は、金融、ヘルスケア、小売などの堅牢なビッグデータ・ソリューションに依存するあらゆる企業にメリットをもたらします。

Delta Lake の主なメリット:

  • データの信頼性の向上:Delta Lake は、トランザクションの保証とスナップショットの分離を提供し、データの信頼性を向上させます。さらに、失敗したトランザクションをロールバックしても、他のトランザクションに影響はありません。Delta Lake は、バージョン管理メカニズムを使用して、既存のデータに影響を与えることなく、データレイクに新しいデータを追加します。
  • スキーマの進化をサポート:Delta Lake は、データセットにおけるスキーマの進化をサポートできます。データスキーマのバージョン履歴を保存することでスキーマの変更を処理し、データを書き込む前にスキーマを更新できます。また、データを書き込む前に、データ・スキーマの検証もチェックします。
  • 互換性:Delta Lake は、Apache Spark、Hadoop、Amazon EMR など、さまざまなビッグデータ処理エンジンと互換性があります。Delta Lake は SQL のようなクエリとも統合されており、データセットの操作やインサイトの抽出を可能にします。

これらのメリットは、Delta Lake を重要なデータ・ストレージ・ソリューションにするのに役立ちます。

Delta Lake の欠点

Delta Lake には多くのメリットがありますが、次のような欠点もあります。

  • 非構造化データには適していない:大量の非構造化データを扱う場合や、データ・ストレージの必要性が少ない場合は、Delta Lake が最適なソリューションとは言えません。従来のデータ・ストレージ・ソリューションの方が、実装が容易でコスト効率に優れています。
  • 学習が容易ではない:Delta Lake はビッグデータのワークロードに最適なソリューションですが、追加の開発リソースと実装時間が必要になる場合があります。さらに、プラットフォームに慣れていないユーザーのための急激な学習曲線があります。

Delta Lake の導入方法

Delta Lake は、GitHub の Apache Spark リポジトリ、Delta Lake の Web サイト、Databricks のようなサードパーティ・アプリケーションなど、さまざまなソースから入手できます。Delta Lake は、Apache Spark、Hadoop、Amazon EMR などの既存のビッグデータ・クラスタに処理エンジンとして追加することで実装されます。

まとめ

Delta Lake は、ビッグデータのワークロードに最適なソリューションです。非構造化データセットを確実に管理できます。ACID トランザクション、スキーマ検証、API 統合などの機能を提供します。Delta Lake にはオーバーヘッド・ストレージの要件がありますが、データ駆動型ビジネスのスケーリングを効果的に処理できます。Delta Lake は、データの品質と信頼性を向上させる堅牢なフレームワークを提供し、ビッグデータ・プラットフォームに有用な追加要素です。

Delta Lake をサポートするのに十分に高速なオブジェクト・ストレージを備えたストレージ・インフラをお探しですか? Delta Lake と FlashBlade でオープンデータ・レイクハウスを構築する方法について詳しくは、こちらをご覧ください。

こちらの資料もご覧ください!

11/2024
Pure Storage FlashBlade and Ethernet for HPC Workloads
NFS with Pure Storage® FlashBlade® and Ethernet delivers high performance and data consistency for high performance computing (HPC) workloads.
ホワイト・ペーパー
7 ページ
ご相談・お問い合わせ
ご質問・ご相談

ピュア・ストレージ製品および認定についてのご質問・ご相談を承っております。ご連絡をお待ちしております。

デモのご用命

ライブデモのご用命を承っております。ピュアがいかにしてデータを成果に変えるお手伝いができるかをご説明します。 

ピュア・ストレージ・ジャパン株式会社

〒100-0014 東京都千代田区永田町 2 丁目 10-3 東急キャピトルタワー 12 階

 

一般: info-japan@purestorage.com

メディア: pr-japan@purestorage.com

03-4563-7443(総合案内)

閉じる
このブラウザは現在サポートされていません。

古いブラウザには、セキュリティ・リスクが存在する場合があります。ピュア・ストレージの Web サイトをより快適にご利用いただけるよう、最新のブラウザにアップデートしてください。