Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Deep Dive - Delta Live Tables

Deep Dive - Delta Live Tables

Delta Live TablesについてDeep Diveした資料になります。

Databricks Japan

April 12, 2024
Tweet

More Decks by Databricks Japan

Other Decks in Technology

Transcript

  1. ©2021 Databricks Inc. — All rights reserved 我々はビジネス成果においてデータが重要であるこ とを知っています 顧客体験

    製品 / サービスの イノベーション 運用効率性 収益の拡大 セルフ サービス分析 予兆分析 データドリブンの 意思決定 GDPR CCPA BCBS29 HIPAA データウェアハウス / レイクの集約 データ移行 データ ガバナンス & コ ンプライアンス Business objectives 分析 & AI デジタル近代化
  2. ©2021 Databricks Inc. — All rights reserved 半構造化 非構造化 構造化

    クラウド データ レイク ETL ETL ETL ETL ETL Azure Synapse AWS Glue Azure Data Factory Home- Grown ETL Home- Grown ETL Code Generated AWS EMR TASK FLOW TASK FLOW TASK FLOW データ共有 ストリーミングソース クラウドオブジェクトスト ア SaaSアプリケーション NoSQL RDB オンプレミス システム データソース ビジネス洞察 分析 機械学習 ストリーミング分析 しかしデータのデリバリーは複雑です…. ETL
  3. ©2021 Databricks Inc. — All rights reserved 6 Lakehouse Platform

    Data Warehousing Data Engineering Data Science and ML Data Streaming All structured and unstructured data Cloud Data Lake Unity Catalog Fine-grained governance for data and AI Delta Lake Data reliability and performance Databricks Lakehouse Platform is the foundation for Data Engineering
  4. ©2021 Databricks Inc. — All rights reserved Delta Live Tables

    7 CREATE STREAMING TABLE raw_data AS SELECT * FROM cloud_files ("/raw_data", "json") CREATE MATERIALIZED VIEW clean_data AS SELECT … FROM LIVE.raw_data レイクハウスでETLを行うベストな方法 ETL開発の加速 SQLやPythonで宣言すると、自動でDAGをオーケスト レートし、リトライやデータの変更に対応します インフラストラクチャを自動で管理 リカバリー、オートスケーリング、パフォーマンス 最適化のような複雑で面倒な作業を自動化します 高いデータ品質を保証 ビルトインの品質コントロール、テスト、 モニタリングや強制を用いて信頼できるデータをデリバリー バッチとストリーミングの統合 一つの統合されたAPIによってストリーミングの 新鮮さとSQLのシンプルさを入手
  5. ©2021 Databricks Inc. — All rights reserved 分析 機械学習 ビジネス洞察

    自動オペレーション オーケストレーション 観測可能性 データ品質 CI / CD オペレーショナルアプリ Photon DLTによるプロダクションETLパイプラインの構築 クラウドストレージ メッセージキュー ブロンズレイヤー シルバーレイヤー ゴールドレイヤー orders (Streaming Table) customers (Streaming Table) customer_orders (Materialized View) daily_orders (Materialized View) Databricksレイクハウス プラットフォーム UNITY CATALOG
  6. ©2023 Databricks Inc. — All rights reserved 連続あるいはスケジュールされたデータ取り込み • Auto

    Loaderを用いてクラウドストレージに到着 する新規データファイルをインクリメンタル、効率 的に処理 • 到着するファイルのスキーマを自動で推論、ある いは、スキーマヒントで知識を注入 • 自動スキーマ進化 • レスキューデータカラム - 再びデータを失うことは ありません JSON CSV ✅ ✅ AVRO スキーマ進化 ✅ PARQUET ✅ ストリーミング取り込みのシンプルな SQL構文
  7. ©2023 Databricks Inc. — All rights reserved • “how” を抽象化し、解決すべき

    “what” を定義 するための意思に基づく宣言型開発の活用 • データパイプライン間のテーブルの依存関係に基 づくリネージを自動で生成 • 依存関係の欠如や文法エラーのようなエラーを自 動でチェック /* Create a temp view on the accounts table */ CREATE STREAMING VIEW account_raw AS SELECT * FROM cloud_files(“/data”, “csv”); /* Stage 1: Bronze Table drop invalid rows */ CREATE STREAMING TABLE account_bronze AS COMMENT "Bronze table with valid account ids" SELECT * FROM account_raw ... /* Stage 2:Send rows to Silver, run validation rules */ CREATE STREAMING TABLE account_silver AS COMMENT "Silver Accounts table with validation checks" SELECT * FROM account_bronze ... ブロンズ シルバー ゴールド ソース 宣言型SQL & Python API
  8. ©2023 Databricks Inc. — All rights reserved Bronze Silver CDC経由

    UPSERT CDC経由 UPSERT CDC経由 UPSERT ストリーミング ソース クラウドオブ ジェクト ストア 構造化データ 非構造化 データ 半構造化 データ データ移行サー ビス データソー ス • DBRでサポートされるすべてのデータソース、クラ ウドストレージ、DBFSからの変更レコード(insert, update, delete)のストリーム • SQLやPythonにおけるシンプルな宣言型の “APPLY CHANGES INTO” • 順番になっていないイベントへの対応 • スキーマ進化 • SCD2のサポート チェンジデータキャプチャ (CDC)
  9. ©2023 Databricks Inc. — All rights reserved データ品質の検証と監視 • データエクスペクテーションによるデータ

    品質と一貫性コントロールの定義 • 柔軟なポリシーでデータ品質エラーに対応: fail, drop, alert, quarantine(将来的) • すべてのデータパイプラインの実行における品質 メトリクスを捕捉、追跡、報告 /* Stage 1: Bronze Table drop invalid rows */ CREATE STREAMING LIVE TABLE fire_account_bronze AS ( CONSTRAINT valid_account_open_dt EXPECT (acconut_dt is not null and (account_close_dt > account_open_dt)) ON VIOLATION DROP ROW COMMENT "Bronze table with valid account ids" SELECT * FROM fire_account_raw ...
  10. ©2023 Databricks Inc. — All rights reserved データパイプラインの観測可能性 • インパクト分析のための、どのようにデータが流

    れるのかを示す高品質、高精度な リネージダイアグラム • データパイプラインのステータス、オペレーショ ン、ガバナンス、品質に対する行レベルのきめ細 かいロギング • オペレーションの継続性を保証する 継続的なデータパイプラインのモニタリング • Databricks SQLを用いた通知
  11. ©2023 Databricks Inc. — All rights reserved • デプロイ前に容易にテストできるプロダクションと 分離された環境で開発

    - すべてをSQLで • パラメータ化による環境のデプロイと管理 • ユニットテストとドキュメント作成 • 数百のテーブル/パイプラインに動的かつプログラ ム的にスケールできるメタデータ駆動 能力の活用 すべてのデータを最 新に保つためにリ ネージ情報を 捕捉、活用 raw clean scored 開発 ステージング プロダクション 自動化ETL開発ライフサイクル
  12. ©2023 Databricks Inc. — All rights reserved • 自動エラーハンドリングと容易なリプレイでダウンタイム を削減

    • Delta Live Tablesの自動最適化によるメンテナンスの排 除 • 必要な際にはオートスケーリングが自動でリソースを追 加 自動化されたETLオペレーション
  13. ©2021 Databricks Inc. — All rights reserved • スパイクがあって予期できないストリーミング ワークロードを取り扱えるように構築

    • タスク実行を保証しつつも、使用率が低いノー ドをシャットダウン • 必要なノード数にのみスケール 強化オートスケーリング ストリーミングにおけるE2EのレーテンシーSLAを維持しつつもインフラストラクチャコストを削減 Streaming source Spark executors No/Small backlog & low utilization Backlog monitoring Utilization monitoring Scale down 17 AWS Azure GCP 正式提供 正式提供 Public Preview GA Coming Soon 問題 ストリーミングワークロードにおけるスケーリングの 意思決定を行う際のインフラストラクチャ消費の最適化
  14. ©2023 Databricks Inc. — All rights reserved すべてのデータ実践者向けのシンプルなワークフロー作成 データ実践者はDatabricksワークスペースからDLTパイプ ラインなどのタスクを容易にオーケストレート。

    高度なユーザーはCI/CDを完全にサポートするIDEを活用 可能。 リアルタイム監視によるアクション可能な洞察 すべてのワークフローのすべてのタスクに対する完全な可 視性。詳細メトリクスを用いてリアルタイムで プロダクションワークロードの健康状態を確認し、 問題を迅速に特定、トラブルシュート、修正するための分析 を実施。 プロダクションワークロードで実証された信頼性 サーバレスデータ処理と99.95%の可用性を持つ完全にマ ネージドなオーケストレーションサービス。数百万のプロダ クションワークロードを実行しているDatabricksのお客様か らの信頼。 Delta Live Tablesパイプラインなどに 対する統合オーケストレーション Databricks Workflows Unity Catalog Delta Lake BI & データウェ アハウス データストリー ミング データサイエン ス & ML データエンジニ アリング レイクハウスプラットフォーム Workflows Sessions TASK DLT Pipeline 1 DLT Pipeline 2 Aggregate Analyze Train Orders
  15. ©2023 Databricks Inc. — All rights reserved 1.3 trillion rows

    of sensor data processed efficiently 86% reduction in time to production Saved immense data management time and effort Enabled data analysts to build their own data pipelines with SQL Enabled the NextGen self-service data quality platform Supports a 100+ table pipeline in one managed job - time and money savings Customers Save Time with Delta Live Tables
  16. ©2023 Databricks Inc. — All rights reserved Delta Live Tables

    to ingest and analyze data from car service stations. Use this data to get Insights into issue types, what parts are being replaced, regulatory reporting, and part replacement forecasting. Service health and vehicle reliability “It's so intuitive that even somebody with only moderate Python skills can create efficient, powerful data pipelines with relative ease” - Tom Renish, Principal Data Architect, Rivian
  17. ©2023 Databricks Inc. — All rights reserved “At ADP, we

    are migrating our human resource management data to an integrated data store on the Lakehouse. Delta Live Tables has helped our team build in quality controls, and because of the declarative APIs, support for batch and real-time using only SQL, it has enabled our team to save time and effort in managing our data." Jack Berkowitz, CDO, ADP
  18. ©2023 Databricks Inc. — All rights reserved Use Case +

    Challenge • 70+ use cases impacting supply chain, operations, product development, marketing, customer exp • Large volumes of IoT data from millions of sensors difficult to harness for actionable insights and ML due to operational load created by complex data pipelines Why Databricks + DLT? • Lakehouse for unified data warehousing, BI, & ML — enabling new use cases not possible before • DLT enables Shell to build reliable and scalable data pipelines - automatic job maintenance and deep pipeline visibility saves time and resources Impact of DLT • Process 1.3 trillion rows of sensor data with ease • Simplifying ETL development and management for faster insights and ML innovation “Delta Live Tables has helped our teams save time and effort in managing data at this scale. With this capability augmenting the existing lakehouse architecture, Databricks is disrupting the ETL and data warehouse markets, which is important for companies like ours. We are excited to continue to work with Databricks as an innovation partner.” - Dan Jeavons, GM Data Science
  19. ©2023 Databricks Inc. — All rights reserved Shell Developers share

    their thoughts “New gold standard for data pipelines” “Delta Live Tables makes it easier for us to build intelligence into our data ingestion process” “Delta maintenance tasks are no longer an afterthought for developers” “Expectations allows us to trust the data”
  20. ©2023 Databricks Inc. — All rights reserved Use Case +

    Challenge • Real-time insights for real estate investors • Holistic view of real estate insights for informed real estate buying and selling decisions • Processing hundreds of millions of records on increasingly complex and bogged down architecture Why Databricks + DLT? • Lakehouse architecture and DLT frees up Audantic’s data teams from focusing on infrastructure so they can innovate more easily • DLT allows them to build and manage more reliable data pipelines that deliver high-quality data in a much more streamlined way Impact of DLT • 86% reduction in time-to-market for new ML solutions due to shorter development time • 33% fewer lines of code required • Productivity value: $300k “Delta Live Tables is enabling us to do some things on the scale and performance side that we haven’t been able to do before,” explained Lowery. “We now run our pipelines on a daily basis compared to a weekly or even monthly basis before — that's an order of magnitude improvement.” - Joel Lowery, Chief Information Officer at Audantic
  21. ©2023 Databricks Inc. — All rights reserved Delta Live Tablesの提供価値

    2 ビジネス イノベーションの 加速 • 新たなリアルタイム分析、ML、オペレーショナルなユースケースへの取り組み • 既存のBI、分析アプリケーションにより新鮮なデータを提供 • 全員にとってのデータの安定性と信頼度を改善 データチーム 生産性の向上 • すべての既存のデータ実践者が容易にデータストリーミングパイプラインを構築 可能に • プロダクションにある複雑なデータパイプライン管理の負荷を削減 • 前段のデータ品質問題をより迅速に特定、トラブルシュート、修正 • 高コストなデータセットの再構築を避け、インクリメンタルにデータを処理。変動するデータボ リュームに対応してリソースを自動でスケールアップ、ダウン • コストとレーテンシーの適切なトレードオフを行うように、個々のワークロードを調整 インフラコストの 削減