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

Data Lakehouse and Open Table Format: A new Arc...

Data Lakehouse and Open Table Format: A new Architecture for Big Data

Today's world is dominated by big data and the opportunities it presents. From medicine to agriculture, there is no sector that is not affected by it. But harnessing and managing it is a challenge. In recent years, data lakes have emerged as the ideal solution for big data analysis. A data lake stores data from different sources and in different formats in its raw state. This offers great advantages, including system scalability, compute-on-demand to optimize costs, and the ability to iteratively adjust analytic processes to extract new, previously hidden information from existing data. However, data lakes also present data governance challenges, including inadequate support for ACID transactions and versioning mechanisms. Experts are proposing a new solution: the data lakehouse, a hybrid of data lake and data warehouse that combines the compliance of data warehouses with the flexibility of data lakes. This is made possible by an emerging technology: the Open Table Format. This talk introduces the architecture of the data lakehouse and the technology of the Open Table Format with special reference to Apache Iceberg.

Avatar for Christian Del Monte

Christian Del Monte

October 13, 2023
Tweet

Other Decks in Programming

Transcript

  1. | Christian Del Monte – adesso se DATA LAKEHOUSE UND

    OPEN TABLE FORMAT: EINE NEUE ARCHITEKTUR FÜR BIG DATA Photo by Zainal Azrin Mohamad Saari on Unsplash
  2. ABOUT ME − Software-Architekt bei der adesso SE − Über

    20 Jahre Erfahrung im B2B und B2C Bereich − Umgang mit einer Vielzahl von Software-Architekturen, die mit unterschiedlichen IT-Technologien und Frameworks realisiert wurden − Schwerpunkte: Data Lakes, DevOps sowie hochverfügbare, echtzeitnahe Softwaresysteme und deren Umsetzung mit Mitteln wie Cloud, Microservices und Event Driven Architecture Linkedin: linkedin.com/in/christian-del-monte-61b18936 CHRISTIAN DEL MONTE | 2
  3. AGENDA Apache Iceberg 4 Data Lake 2 Big Data 1

    | 3 Data Lakehouse und Open Table Formats 3
  4. BIG DATA Big Data variety velocity volume value veracity DEFINITION

    VON BIG DATA | 5 Big Data sind Daten, die sich durch ein hohes Volumen, eine hohe Velocity, hohe Variety, eine variable Veracity und einen potenziell hohen Value für Business- Intelligence-Prozesse auszeichnen.
  5. BIG DATA Data Source n Abbildung der Architektur eines Data

    Warehouse aus: Müller, Roland M., Lenz, Hans-Joachim; Business Intelligence; Springer; 2013 TYPISCHE ETL ARCHITEKTUR | 6
  6. BIG DATA HERAUSFORDERUNGEN | 7 Behandlung von Data Streams unterschiedlicher

    Geschwindigkeit, Häufigkeit, Menge und Komplexität Inverse Relation zwischen Quantität und Qualität der Daten Zunehmendes Datenvolumen Große Anzahl von heterogenen Datenquellen Komplexität des Ausgabeprozesses Einhaltung der Sicherheits- und Datenschutzbestimmungen der Daten Datenqualität von externen Quellen nicht verifizierbar Gewährleistung der Datenqualität Daten benötigt für eine gegebene Analyse sind nur ein Bruchteil der gesamten Datenmenge
  7. DATA LAKE − Repository von Rohdaten unterschiedlicher Art, strukturiert, halbstrukturiert

    oder unstrukturiert. − Die Datenquellen können vielfältig und heterogen sein. − Das Repository kann mit einer oder mehreren verschiedenen Technologien aufgebaut werden. − Der Data Lake umfasst: • Metadatenkataloge für Data Reasoning, Abfrageverarbeitung und Datenqualitätsmanagement. • Datenverwaltungstools für die Integration, Transformation und Bereinigung von Daten. • Richtlinien und Tools zur Datenverwaltung. − Der Data Lake bietet verschiedenen Arten von Benutzern Schnittstellen zum Erkunden, Abfragen und Verwalten von Daten und Metadaten. − Der Data Lake kann vor Ort oder in der Cloud implementiert werden. EINE DEFINITION | 9
  8. DATA LAKE Data Ingestion Metadata Extraction Ermittlung von Metadaten- informationen,

    die für den Zugriff auf einen Datensatz wichtig sind, z. B. Name, Extension, Datenstruktur. Metadata Modeling Graphen-strukturiertes Datenmodell | 12 DATA INGESTION
  9. DATA LAKE Data Lake Maintenance Dataset preparation and organization Discover

    related datasets Data integration Metadata enrichment Data quality improvement | 13 DATA MAINTENANCE
  10. DATA LAKE HERAUSFORDERUNGEN | 16 Datenqualität und -integrität Metadatenmanagement Datensicherheit

    und Zugriffskontrolle Datenprovenienz und –historie Skalierung und Performance Komplexität der Abfrage Data Governance und Compliance Kostenmanagement Verfügbarkeit und Ausfallsicherheit Werkzeuge und Fähigkeiten
  11. DATA LAKE − Schwierigkeiten bei der Bereitstellung von ACID-Garantien: −

    Atomicity, − Consistency − Isolation − Durability − Durchführen effizienter Aktualisierungen und Löschungen auf Datensatzebene, wenn sich Daten in Ihrem Unternehmen ändern − Verwaltung der Abfrageleistung, wenn Tabellen auf Millionen von Dateien und Hunderttausende von Partitionen anwachsen − Sicherstellung der Datenkonsistenz bei mehreren gleichzeitigen Schreib- und Lesevorgängen − Verhinderung von Datenbeschädigungen durch teilweise fehlgeschlagene Schreibvorgänge − Entwicklung von Tabellenschemata im Laufe der Zeit ohne (teilweises) Neuschreiben von Datensätzen FEHLENDE ACID-GARANTIEN | 17
  12. DATA LAKEHOUSE UND OPEN TABLE FORMATS | 19 DATABASE ARCHITEKTUR

    Petrov, Alex. Database Internals: A Deep Dive into How Distributed Data Systems Work. O'Reilly, 2019
  13. DATA LAKEHOUSE UND OPEN TABLE FORMATS − datenzentrierte Architektur mit

    Data-Lake-Funktionen, die es ermöglichen, Daten in ihrer Rohform zu speichern, und mit Data-Warehouse-Funktionen, die eine effiziente Verarbeitung und Abfrage von Daten ermöglichen. − Typische Eigenschaften: − Skalierbarkeit − Integration − Datenqualität und Governance − Verarbeitung − Abfrageoptimierung − Analytics DATA LAKEHOUSE: EINE DEFINITION | 20
  14. DATA LAKEHOUSE UND OPEN TABLE FORMATS DATA LAKEHOUSE: EINE DEFINITION

    | 21 Schlesinger, Denise. Building a Data Lakehouse using Azure Data Explorer. Microsoft Tech Community, 27 Apr 2023. https://techcommunity.microsoft.com/t5/startups-at-microsoft/part-1-building-a-data-lakehouse-using-azure-data-explorer/ba-p/3805913
  15. DATA LAKEHOUSE UND OPEN TABLE FORMATS | 22 TABLE FORMAT

    Was ist ein Table Format? “A way to organize a dataset’s files to present them as a single table.” Hughes, Jason, „Apache Iceberg: An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the- covers/#toc_item_Iceberg%20catalog
  16. DATA LAKEHOUSE UND OPEN TABLE FORMATS | 23 OPEN TABLE

    FORMATS Apache Hudi Apache Iceberg Delta Lake
  17. DATA LAKEHOUSE UND OPEN TABLE FORMATS | 25 HIVE: GRENZEN

    Ineffiziente Datenänderungen Unfähigkeit zur konsistenten Änderung von Daten in mehreren Partitionen Unsichere gleichzeitige Datenänderung Langsame Verzeichnisauflistungen Abhängigkeit von der physischen Struktur Veraltete Tabellenstatistiken Leistungsprobleme bei Cloud-Objektspeicher
  18. APACHE ICEBERG | 28 FEATURES Schema-Evolution ACID-Transaktionen Partitionierung Partition evolution

    Time Travel Metadaten-Verwaltung Abfrageschnittstelle Kompatibilität Optimierungen
  19. APACHE ICEBERG | 29 TABLE FORMAT Hughes, Jason, „Apache Iceberg:

    An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the-covers/#toc_item_Iceberg%20catalog
  20. APACHE ICEBERG | 30 ICEBERG CATALOG Hughes, Jason, „Apache Iceberg:

    An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the-covers/#toc_item_Iceberg%20catalog
  21. APACHE ICEBERG | 31 METADATA FILE Hughes, Jason, „Apache Iceberg:

    An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the-covers/#toc_item_Iceberg%20catalog
  22. APACHE ICEBERG | 32 MANIFEST LIST Hughes, Jason, „Apache Iceberg:

    An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the-covers/#toc_item_Iceberg%20catalog
  23. APACHE ICEBERG | 33 MANIFEST FILE Hughes, Jason, „Apache Iceberg:

    An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the-covers/#toc_item_Iceberg%20catalog
  24. APACHE ICEBERG | 34 CRUD: CREATE TABLE CREATE TABLE table1

    ( order_id BIGINT, customer_id BIGINT, order_amount DECIMAL(10, 2), order_ts TIMESTAMP ) USING iceberg PARTITIONED BY ( HOUR(order_ts) ); Hughes, Jason, „Apache Iceberg: An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the- covers/#toc_item_Iceberg%20catalog
  25. APACHE ICEBERG | 35 CRUD: INSERT INSERT INTO table1 VALUES

    ( 123, 456, 36.17, '2021-01-26 08:10:23' ); Hughes, Jason, „Apache Iceberg: An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the- covers/#toc_item_Iceberg%20catalog
  26. APACHE ICEBERG | 36 CRUD: MERGE INTO + UPSERT MERGE

    INTO table1 USING ( SELECT * FROM table1_stage ) s ON table1.order_id = s.order_id WHEN MATCHED THEN UPDATE table1.order_amount = s.order_amount WHEN NOT MATCHED THEN INSERT * Hughes, Jason, „Apache Iceberg: An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the- covers/#toc_item_Iceberg%20catalog
  27. APACHE ICEBERG | 37 CRUD: SELECT SELECT * FROM db1.table1

    Hughes, Jason, „Apache Iceberg: An Architectural Look Under the Covers” https://www.dremio.com/resources/guides/apache-iceberg-an-architectural-look-under-the- covers/#toc_item_Iceberg%20catalog
  28. Hidden Partitioning Time Travel Compaction APACHE ICEBERG | 38 ANDERE

    FEATURES SELECT * FROM db1.table1 SELECT * FROM table1 AS OF '2021-01-28 00:00:00' CALL catalog.system.rewrite_data_files( table => 'table1', strategy => 'binpack', options => map('min-input-files','2') )
  29. APACHE ICEBERG | 40 MEHR INFOS − https://iceberg.apache.org/ − https://iceberg.apache.org/spark-quickstart/

    − Tomer Shiran, Jason Hughes, Alex Merced, Dipankar Mazumdar. Apache Iceberg, the definitive Guide – Early Release. O‘Reilly, 2023 https://hello.dremio.com/wp-apache-iceberg-the-definitive-guide- reg.html − Shana Schipers, Ian Meyers, and Carlos Rodrigues. Choosing an open table format for your transactional data lake on AWS. 09 JUN 2023. https://aws.amazon.com/de/blogs/big- data/choosing-an-open-table-format-for-your-transactional-data-lake- on-aws/
  30. KONTAKT Christian Del Monte: Software-Architekt bei der adesso SE Linkedin:

    https://www.linkedin.com/in/christian-del-monte-61b18936/ | 42