Apache Parquet ist ein spaltenorientiertes, binäres Datenformat, das eine effiziente Datenkompression und unterschiedliche Codierungen ermöglicht. Aufgrund seiner spaltenbasierten Struktur und der Möglichkeit, der Datei Metadaten mitzugeben, ähnelt es dem iba-DAT-Dateiformat. Auch hinsichtlich einer vergleichbaren Speichergröße sind diese Dateien als Austauschformat für externe Systeme zu empfehlen.

Die Daten in der Ausgabedatei werden wie folgt strukturiert:

  • Ein Kanal (oder Ausdruck) entspricht einer Parquet-Spalte.

  • Die Modulstruktur, die in den iba-Messdateien vorhanden ist, hat kein direktes Pendant in Parquet und wird daher über Metadaten gemappt (siehe unten).

  • Alle Infofelder werden als Parquet-Metadaten gespeichert.

Einstellungen

Komprimierung

Das Apache Parquet Format bietet verschiedene Komprimierungsmethoden an. ibaAnalyzer unterstützt eine einfache Codierung (unkomprimiert), Snappy, Gzip, Brotli, LZ4 und Zstandard.

Zeilen pro "row group"

Das Apache Parquet Format verfügt zusätzlich über einen zeilenweisen Strukturmechanismus, der "Column Chunks" oder "Row Group" genannt wird. In ibaAnalyzer haben Sie die Möglichkeit, die Größe der Row Group individuell anzupassen. Die Eingabe entspricht der Anzahl der Zeilen pro Row Group.

Spark-kompatible Dateien erzeugen

Sie können das Apache Spark Framework für die Arbeit mit Parquet-Dateien verwenden. Weil einige Zeichen in diesem Framework nicht als Spaltenname erlaubt sind, ersetzt die Funktion sämtliche solche Zeichen durch Unterstriche.

Zeit-Exportmodus

Wählen Sie aus, ob Zeitdaten exportiert werden sollen. Falls ja, wählen Sie das Format aus. Der Zeitstempel erscheint dann in einer separaten Spalte in der exportierten Datei.

  • Keine Wenn keine Zeitstempel exportiert werden, stehen die Startzeit und die Abtastrate immer noch als Metadaten zur Verfügung.

  • Relativer Zeitoffset Startet mit "0" und zählt die Sekunden vom Start der Datei an. Die zusätzliche Spalte enthält FLOAT-Werte.

  • Absolutes Datum/Zeit Die zusätzliche Spalte enthält das absolute Datum und die absolute Zeit. Der Parquet-Datentyp TIMESTAMP wird verwendet.

Spaltennamen ableiten aus

Die Spaltennamen für die Parquet-Dateien können Sie hier auswählen. Zur Auswahl stehen die Kanalnummern, Kanalnamen oder einer der Kommentare. Beachten Sie, wenn Sie einen Kommentar verwenden, dass diese Information verfügbar sein muss.

Wenn Sie die Kanalnummer auswählen, werden die Namen wie folgt formatiert:

  • [M:C] für analoge Kanäle

  • [M_C] für digitale Kanäle (Punkte sind für das Parquet Format nicht zulässig in Kanalnamen)

  • [M:C:S] für Unterkanäle

Wenn "M" als Modulnummer verwendet wird, ist die Signalnummer (oder Kanalnummer) "C" und die Unterkanalnummer "S".

Das Parquet-Format lässt keine Mehrfachbenennung für Spalten zu. Falls dies in den Originaldaten dennoch der Fall ist, fügt ibaAnalyzer ein entsprechendes Suffix wie "_1", "_2", usw. hinzu.

Präfix Messort

Für die Extraktion von ibaQDR-Messdateien können Sie optional die Messortnummer als Präfix vor dem Spaltennamen der Kanalnummer hinzufügen.

Metadaten

Wenn Sie Daten aus iba-Messdateien exportieren, stehen verschiedene Metadaten (oder Infofelder) zur Verfügung. Diese Daten werden auch in das Parquet-Format geschrieben, wo nur eine Ebene an Metadaten existiert. Insofern werden die Daten wie folgt strukturiert:

  • Informationen auf Dateiebene (Standard-Infofelder) werden als normale Key-Value-Pairs mit dem Infofeld als Schlüssel ("Key") gespeichert.

  • Für berechnete Spalten und Infospalten wird der ausgewiesene Name als Schlüssel verwendet.

  • Bei Informationen auf Modulebene werden Schlüssel in der Form "M[x]y" verwendet, wobei "x" die Modulnummer und "y" den Feldnamen darstellen.

  • Bei Informationen auf Kanalebene werden Schlüssel in der Form "[x]y" verwendet, wobei "x" die Modulnummer und "y" den Feldnamen darstellt.

Durch diese Datenstruktur kann ibaAnalyzer die komplette Dateistruktur wiederherstellen, wenn die extrahierte Parquet-Datei geöffnet wird.

Längenbasierte Daten und ibaQDR-Daten (nur Extraktion)

Sie können ebenfalls längenbasierte Daten oder ibaQDR-Dateien in das Parquet-Format extrahieren.Wenn das korrekte längenbasierte Profil für die Extraktion verwendet wird, schreibt ibaAnalyzer zusätzliche Metadaten in die Datei, um dies anzuzeigen. Die folgenden Felder werden verwendet:

  • "Lengthbased" Dieses Feld zeigt an, dass die Spalte längenbasierte Daten enthält.

  • "LengthBase" Im Fall von längenbasierten Daten gibt dieses Feld die Abtastrate in Metern an.