Delta Lake

データレイクにデータの信頼性とパフォーマンスをもたらします

Delta Lake(デルタレイク)は、AWS S3、Azure Data Lake Storage、HDFS などの既存のデータレイクファイルストレージの上に設置されるオープンソースストレージレイヤーです。データレイクに信頼性とパフォーマンスをもたらし、ライフサイクル管理を可能にします。不正なデータの取り込み、コンプライアンスのための厄介なデータ削除、変更データキャプチャのためのデータ変更の問題で、もう頭を悩ませる必要はありません。安全でスケーラブルなクラウドサービスにより、高品質なデータがデータレイクに届く速度を加速させ、チームがそのデータをすばやく活用できるようにします。

メリット

 

 

オープンで拡張可能

Delta Lake は、Linux Foundation のオープンソースプロジェクトです。データはオープンな Apache Parquet 形式で保存され、互換性のあるリーダーでデータを読み取ることができます。オープン API でApache Spark™ と互換性があるため、データパイプラインの変更は最小限ですみます。
 

データの信頼性

今までのデータレイクでは、取り込んだデータを制御できないために、データ品質の問題が発生することがありました。いわゆるデータスワンプです。Delta Lake は、データレイクにストレージレイヤーを追加してデータ品質を管理し、データレイクに高品質データのみが含まれるようにします。
 

データライフサイクルの管理

ビジネス要件の変化に応じて、変化するレコードと進化するスキーマに対応します。また、同じエンジン、API、コードを使用して真に統合されたストリーミングとバッチにより、Lambda アーキテクチャの能力を超越します。

機能

 

ACIDトランザクション:複数のデータパイプラインが、データレイクに対して同時にデータを読み書きできます。ACID トランザクションは、最も強い分離レベルである直列化可能性によって、データの整合性を確保します。
詳細は、「Delta Lakeについて:トランザクションログを解放する」をご覧ください。
 
更新と削除:Delta Lakeは、データセットをマージ、更新、削除するためのDML APIを提供します。これにより、GDPR/CCPAに容易に準拠でき、変更データのキャプチャを簡素化できます。

スキーマの適用:Data Lakeスキーマを指定してそれを適用することで、データ型が正しいことや必要な列が存在することを確認し、不正なデータによるデータの破損を防ぐことができます。詳細は、「Delta Lakeについて:スキーマの適用および展開」をご覧ください。
 
タイムトラベル(データのバージョン管理):データのスナップショットを撮ることで、開発者はデータ変更の監査、不正な更新のロールバック、実験の再現などを目的として、以前のバージョンのデータにアクセスしたり、元に戻したりすることができます。
詳細は、「大規模Data Lake向けのDelta Lakeタイムトラベルの紹介」をご覧ください。
 
拡張性の高いメタデータ処理:Delta Lake は、メタデータを通常のデータと同様に扱い、Spark の分散処理能力を活用します。そのため、数十億ものパーティションとファイルを持つペタバイト規模のテーブルを処理することができます。
オープンフォーマット:Delta Lake のすべてのデータは Apache Parquet 形式で保存されるため、Delta Lake は Parquet にネイティブな、効率的な圧縮とエンコーディングスキームを活用することができます。

バッチ、ストリーミングソース、シンクの統合:Delta Lake のテーブルは、バッチテーブルでもあり、ストリーミングソースとシンクでもあります。ストリーミングデータの取り込み、バッチ履歴データのバックフィル、対話型クエリなどをすぐに行うことができます。
スキーマの進化: ビッグデータは変化し続けています。Delta Lake では、DDL の煩わしい作業を必要とせずに、テーブルのスキーマを変更して自動的に適用することができます。

監査履歴:Delta Lake のトランザクションログにはデータに加えられたすべての変更の詳細が記録され、コンプライアンス、監査、複製用にすべての変更履歴が提供されます。

Apache Spark API との完全な互換性: Delta Lake はビッグデータの処理エンジンとして広く使用されている Spark と完全な互換性があるため、開発者は既存のデータパイプラインを最小限変更するだけで Delta Lake を使用することができます。
 
最新の機能の詳細については、Azure DatabricksAWSの製品ニュースをご覧ください。

parquetを…

dataframe
   .write
.format("parquet")
.save("/data")

deltaに変更するだけ

dataframe
   .write
.format("delta")
.save("/data")

データインジェストのネットワーク

すべてのアプリケーション、データベース、ファイルストレージからデータを簡単かつ迅速にDelta Lakeに取り込むネイティブコネクタ

仕組み

Delta Lake の仕組み

Michael Armbrust、Delta Lake 開発者

Delta Lake は、AWS S3、Azure Data Lake Storage、HDFS などの既存のデータレイクファイルストレージの上にあるオープンソースストレージレイヤーです。データの保存にはバージョン管理された Apache Parquet™ を使用します。また、Delta Lake は ACID トランザクション、データのバージョン管理、監査履歴などの拡張機能を提供するために行われたすべてのコミットを追跡するトランザクションログも保存します。データにアクセスするには、オープン Spark API、任意のコネクタ、Parquet リーダーを使用して、ファイルを直接読み取ります。

無料お試し・その他のご相談を承っております

DATABRICKS を無料で試す


クイックスタートガイドに従ってください