Top-Fragen
Zeitleiste
Chat
Kontext
Apache Parquet
Aus Wikipedia, der freien Enzyklopädie
Remove ads
Apache Parquet ist ein Open Source spaltenorientierte Datenspeicher-Format und ist Basis für viele cloud-native Datenanalyse-Anwendungen. Es wurde 2013 von Twitter und Cloudera auf Basis eines Artikel über Google Dermel entwickelt.[2]
Remove ads
Geschichte
Im Jahr 2010 veröffentlichte Sergey Melnik das VLDB 2010 Dremel Paper, in dem Google Dremel beschrieben wird.[3][4] Darauf basierend entwickelten Twitter und Cloudera Parquet als effizientes spaltenorientiertes Speicherformat für Apache Hadoop. Es wurde im Juli 2013 mit der Version 1.0 veröffentlicht. Seit 27. April 2015 ist ein Top-Level-Projekt der Apache Software Foundation.[5][6]
Parquet Format
Zusammenfassung
Kontext

Das binäre File-Format enthält mit „parquet.thrift“ formale Definition der Metadaten abgeleitet von Thrift. Darin ist beschrieben wie die folgenden Daten strukturiert und gespeichert sind.[7]
- Daten werden in Zeilengruppen partitioniert und innerhalb dieser Partitionen spaltenweise in Pages gespeichert. Die Datei beginnen mit einem Header, der auf den Beginn des Footers verweist. Im Footer befinden sich die Metadaten zur Beschreibung der Datenblöcke.
- Encoding- und Kompressionstechniken werden abhängig vom Datentyp jeder einzelnen Spalte optimiert.
- Werden nur einzelne von vielen Spalten abgefragt, wird nur dieser kleine Teilbereich der Daten gelesen.
- Parquet verwendet eine automatische Wörterbücher-Codierung, wobei insbesondere bei einer kleinen Zahl unterschiedlicher Werte eine hohe Datenkompression erreicht wird.
- Lauflängenkodierung-Bit-Packing-Hybrid ist eine Kombination aus Bit-Packing und Lauflängenkodierung, um wiederholte Werte effizienter zu speichern.[8]
- Die Verschlüsselung ist flexibel, es kann die gesamte Datei verschlüsselt werden oder auch nur einzelne Spalten mit schützenswerten Daten, wobei für jede Spalte ein eigener Schüssel anwendbar ist.[9]
- Für Geoinfomations-System-Anwendungen werden Geospatial-Datentypen bereitgestellt.[10]

Diagramm zum Parquet File-Format
Remove ads
Cloud-Speicher und Data Lakes
Parquet ist als Basisdateiformat in Cloud-basierten Data-Lake-Architekturen weit verbreitet. Cloud-Speichersysteme wie Amazon S3, Azure Data Lake Storage und Google Cloud Storage speichern Daten meist im Parquet-Format, da es eine effiziente spaltenorientierte Darstellung und Suchfunktionen bietet.
Data-Lake-Frameworks wie Apache Iceberg, Delta Lake, Ducklake und Apache Hudi bauen eine zusätzliche Metadatenschicht über Parquet-Dateien auf, um Funktionen wie Schema-Evolution, Time-Travel-Abfragen und ACID- konforme Transaktionen zu unterstützen. In diesen Architekturen dienen Parquet-Dateien als unveränderliche Speicherschicht, während die Data-Lake-Implementierung die Datenversionierung und Transaktionsintegrität verwaltet.
Einzelnachweise
Wikiwand - on
Seamless Wikipedia browsing. On steroids.
Remove ads
