Parquet in CSV umwandeln

Parquet kannst du hier kostenlos und ohne Konto in CSV umwandeln: Datei oben ablegen, und ein, zwei Sekunden später steht das Ergebnis zum Herunterladen bereit. Die Umwandlung läuft in deinem eigenen Browser, die Datei wird also nie hochgeladen — das klappt unter Windows, macOS und Linux ebenso wie auf iPhone und Android, und es funktioniert selbst dann noch, wenn du das Netz abschaltest.

  • Wo es läuft In deinem Browser. Die Datei wird nicht hochgeladen.
  • Verlustfrei Es geht nichts verloren. CSV enthält genau das, was auch Parquet enthielt.
  • Größenbegrenzung Bis 100 MB pro Datei, kostenlos und ohne Konto.

Bis zu 100 Dateien auf einmal. Gemischte Formate sind kein Problem.

Wenn der Betriebsprüfer CSV verlangt und Parquet bekommt

Die GoBD schreiben vor, in welcher Form digitale Buchführungsdaten bei einer Außenprüfung bereitgestellt werden müssen, und die gängige Prüfsoftware der Finanzämter erwartet dabei fast immer eine flache, texttaugliche Tabelle — kein Format, das eine Prüferin oder ein Prüfer je gesehen hat, ist Parquet. Wenn ein Datenteam intern in Parquet arbeitet, verwandelt sich der Auszug für die Prüfung deshalb regelmäßig in eine CSV-Datei.

Wer diesen Export zum ersten Mal macht, geht meist davon aus, dass dabei nichts verloren geht — schließlich kommen ja alle Werte an. Genau das ist die Stelle, an der die Erwartung nicht zutrifft: Die Werte kommen an, ihre Typisierung nicht.

Die Richtung, die sicher wirkt und es nicht ist

Der andere Weg ist offensichtlich eine Umwandlung: Aus Text werden typisierte Spalten, und jeder erwartet, das Ergebnis zu prüfen. Diese Richtung wirkt eher wie ein reiner Export — nichts wird komprimiert, nichts wird interpretiert — und genau dieser Eindruck täuscht.

Parquet trägt ein Schema: Jede Spalte hat einen deklarierten Typ, im Dateifuß hinterlegt, und jede Anfrage-Engine liest diesen Fuß, bevor sie eine einzige Zeile liest. Eine CSV-Datei kennt nur eine Kopfzeile mit Namen und sonst nichts. Die Umwandlung überträgt die Werte unverändert und wirft alles Wissen über sie weg — die nächste Software, die die CSV liest, rät den Typ neu, mit hoher Wahrscheinlichkeit anders, als das Parquet-Schema ihn tatsächlich festgelegt hatte.

Wie jeder Spaltentyp als Text aussieht

Wahrheitswerte erscheinen als `true` und `false`, Ganzzahlen und Kommazahlen in ihrer gewöhnlichen Dezimalschreibweise, Zeichenketten unverändert und nur dort in Anführungszeichen, wo Komma, doppeltes Anführungszeichen oder Zeilenumbruch vorkommen. Fehlende Werte werden zu leeren Feldern.

Nichts davon lässt sich zum ursprünglichen Schema zurückrechnen. Eine Spalte, die Parquet als 32-Bit-Ganzzahl deklariert hatte, und eine, die es als Gleitkommazahl deklariert hatte, sehen in der CSV beide wie Ziffern mit optionalem Punkt aus, und eine Wahrheitswert-Spalte ist von einer Textspalte mit dem Inhalt „true" nicht mehr zu unterscheiden. Landet die CSV bei einem Zielsystem mit eigenem Schema, lohnt es sich, die Spaltentypen vorher aus der Parquet-Datei zu lesen — `DESCRIBE` in DuckDB zeigt sie in einer Zeile — und sie in die Ladedefinition zu schreiben, statt dem nächsten Werkzeug das Raten zu überlassen.

Zeitstempel werden zu ISO-8601-Text

Eine Zeitstempel-Spalte wird als ISO-8601-Zeichenkette geschrieben, ein Wert sieht dann etwa so aus: `2024-03-11T09:30:00.000Z`. Das ist die beste verfügbare Antwort in einem Format ohne eigenen Datentyp dafür: eindeutig, was Monat und was Tag ist, sortiert als reiner Text richtig, und wird von praktisch jeder Datenbank und jeder Sprache ohne zusätzliche Formatangabe verstanden.

Es bleibt trotzdem Text. Eine Datumsspalte in der CSV reagiert erst dann auf Datumsrechnung, wenn das lesende Programm ausdrücklich mitgeteilt bekommt, dass es sich um ein Datum handelt, und Excel wendet beim Öffnen eine eigene Interpretation an. Landet die Datei in einer Datenbank, ist das Deklarieren der Spalte als Zeitstempel beim Laden eine einzige Zeile und rettet die Bedeutung; landet sie bei einer Person, liest sich die ISO-Form wenigstens in jedem Land gleich.

Große Ganzzahlen werden zu Text statt gerundet

Parquet kennt 64-Bit-Ganzzahlen, JavaScript — die Sprache, in der diese Umwandlung läuft — stellt Ganzzahlen nur bis 53 Bit exakt dar. Ein Wert darüber lässt sich nicht mehr als Zahl übertragen, ohne Genauigkeit zu verlieren.

Statt zu runden, schreibt die Umwandlung solche Werte als Text. Eine Bestellnummer oder eine ähnlich lange Kennung kommt deshalb mit jeder Ziffer unverändert in der CSV an, während eine Spalte, die sichere und unsichere Werte mischt, teils Zahlen und teils Zeichenketten enthält — in einer CSV-Datei ohnehin nicht zu unterscheiden. Die Alternative, das Runden, würde eine Kennung um eins verschieben, was wie eine gültige Kennung aussieht und genau die Art Fehler ist, die mehrere Systeme durchläuft, bevor sie jemandem auffällt.

Listen und verschachtelte Spalten landen als JSON in einem Feld

Parquet kann verschachtelte Daten nativ halten: eine Spalte als Liste von Zeichenketten, als benanntes Objekt oder als Zuordnung. Eine CSV-Zelle kennt nur einen einzelnen Skalarwert und keine Syntax für mehr.

Die Umwandlung schreibt solche Werte deshalb als JSON in das Feld, eine Listen-Spalte kommt also als `["a","b"]` in einer Zelle an, in Anführungszeichen gesetzt, weil das enthaltene JSON Kommas trägt. Das ist rückführbar, sofern das lesende Programm dieses JSON auch parst — und ausgesprochen unpraktisch, wenn das Ziel ein Tabellenblatt oder eine Importmaske ist. Binärspalten erhalten eine ähnliche Behandlung aus demselben Grund: ein Byte-Array ohne Textkennzeichnung wird als kleingeschriebener Hexadezimalwert geschrieben, was wenigstens rückführbar und offensichtlich kein Fließtext ist.

Die Datei wird deutlich größer

Rechne mit einem Vielfachen, manchmal mit weit mehr. Parquet speichert Werte binär, komprimiert jede Spalte einzeln und hält wiederkehrende Werte nur einmal als Wörterbuch mit kleinen Verweisen darauf; eine CSV-Datei kennt davon nichts — jeder Wert steht als Zeichenkette in jeder Zeile, unkomprimiert.

Ausgerechnet die Spalten, die beim Einlesen am stärksten schrumpften, wachsen beim Herausschreiben am stärksten wieder. Ein Ländercode, der über eine Million Zeilen wiederholt wird, kostet in der Parquet-Datei fast nichts und in der CSV eine Million eigene Kopien. Vor dem Versand per E-Mail lohnt sich der Blick auf die Dateigröße, und ein anschließendes Komprimieren der CSV zu gzip holt einen guten Teil dieses Unterschieds wieder herein, falls die Gegenstelle das akzeptiert.

Die Datei in Excel öffnen, ohne dass Umlaute zerbrechen

Die CSV ist UTF-8 kodiert, ohne Byte-Order-Mark, mit einem gewöhnlichen Zeilenumbruch — richtig für Skripte, Importwerkzeuge und Versionskontrolle, und genau das, was einen Namen wie „Müller" beim Doppelklick unter Windows als Zeichensalat erscheinen lässt, weil Excel ohne Kennzeichnung auf die Systemcodepage zurückfällt.

Der Import über Daten, Daten abrufen, Aus Text/CSV mit ausgewähltem UTF-8 umgeht das Problem und erlaubt gleich, Kennungsspalten als Text zu markieren — was zählt, weil Excel sonst seine eigene Zahlenumwandlung auf genau die Spalten anwendet, deren Typinformation eben erst verloren ging. Soll die Datei tatsächlich ein Tabellenblatt werden, entfällt bei einer Umwandlung von Parquet direkt zu XLSX sowohl die Kodierungsfrage als auch der Typverlust.

Wie viele Zeilen sich hier verarbeiten lassen

Der Leser hält die gesamte Tabelle im Arbeitsspeicher, bevor irgendetwas geschrieben wird. Einige Dutzend Megabyte Parquet sind unproblematisch; zu bedenken ist, dass es sich um ein komprimiertes Format handelt, sodass eine mäßig große Datei zu erheblich mehr Text aufgeblasen wird und die Grenze früher erreicht ist, als die Dateigröße vermuten lässt.

Für einen großen Auszug ist DuckDB das passendere Werkzeug: Es liest die Parquet-Datei und schreibt die CSV in einer einzigen Anweisung, ohne beides gleichzeitig im Speicher zu halten. Damit lassen sich zugleich nur die tatsächlich benötigten Spalten auswählen — meist ohnehin die bessere Antwort auf die Bitte „die Daten als CSV", denn gemeint sind fast immer sechs bestimmte Spalten davon.

Der Auszug wird hier gelesen und geht nicht weiter

Der Parquet-Leser ist eine Bibliothek, die diese Seite bei Bedarf nachlädt, das Schreiben übernimmt reines JavaScript — es geht also keine Anfrage mit der Datei irgendwohin. Das zählt bei diesem Format mehr als bei den meisten anderen: Ein Parquet-Auszug stammt in der Regel aus der Mitte einer Datenplattform, also aus der Fassung vor der Maskierung und vor der Aggregation.

Es gibt weder Warteschlange noch Konto noch eine Zeilenbegrenzung außer dem eigenen Arbeitsspeicher. Ob die Umwandlung gelingt, entscheidet allein, ob die ausgeschriebene Tabelle hineinpasst — abschätzbar anhand der Zeilenzahl im Dateifuß.

Wann die Parquet-Datei so bleiben sollte, wie sie ist

Hat die Empfängerin oder der Empfänger irgendein modernes Datenwerkzeug zur Hand, gehört das Original verschickt. DuckDB, pandas, Polars, R mit arrow, Spark und praktisch jedes Data Warehouse lesen Parquet direkt, bewahren dabei die Typen, halten die Datei klein und sparen einen ganzen Umwandlungsschritt, bei dem etwas schiefgehen kann.

CSV ist die richtige Wahl, wenn die Gegenstelle wirklich nicht anders kann — eine Kollegin in der Buchhaltung mit einem Tabellenblatt, eine Prüfsoftware, die das Format vorschreibt, eine Upload-Maske mit fester Liste. Das sind reale, häufige Fälle, und für sie ist diese Umwandlung gedacht. Zur Gewohnheit sollte sie nicht werden: Jede aus Parquet erzeugte CSV ist eine Kopie, die vergessen hat, was in ihr steckte.

Parquet in CSV umwandeln — so geht es

  1. Leg deine Parquet-Datei auf dieser Seite ab, oder klick, um eine auszuwählen.
  2. Wähl CSV als Ziel. Die Umwandlung läuft in deinem Browser, die Datei wird nicht hochgeladen.
  3. Lade die fertige CSV-Datei herunter.

Parquet und CSV im Vergleich: was sich ändert

Parquet im Vergleich zu CSV
ParquetCSV
Vollständiger NameApache ParquetComma-Separated Values
Dateiendung.parquet.csv
Medientypapplication/vnd.apache.parquettext/csv
KompressionVerlustfrei — es wird nichts verworfen
Erstmals veröffentlicht20131972
Herausgegeben vonApache Software Foundation
SpezifikationRFC 4180
LizenzlageOffener StandardOffener Standard
Heutiger StandAktuellAktuell
Öffnet im BrowserKein BrowserKein Browser
Stattdessen erwogenJSONXLSX, JSON

Was erhalten bleibt

Es geht nichts verloren. Parquet und CSV speichern ihren Inhalt verlustfrei — die Umwandlung tauscht die Verpackung, nicht die Qualität, und du kannst sie wiederholen, ohne dass sich Schäden aufsummieren.

Was das Zielformat zusätzlich kann

CSV ist ein Arbeitsformat, Parquet ein fertiges. Zurück kommt bearbeitbarer Text statt eines Bildes der Seite — meist der Grund für die Umwandlung und zugleich ihre Grenze.

Das Ergebnis öffnen

pandas liest sowohl Parquet als auch CSV — du kannst das Ergebnis also gegen das Original prüfen, ohne ein zweites Programm zu brauchen.

Wofür die beiden Formate gedacht sind

CSV stammt aus 1972, festgehalten in RFC 4180. Microsoft Excel, LibreOffice Calc und pandas lesen das Format.

CSV wurde 1972 veröffentlicht, Parquet 2013. Das ältere ist in der Regel die sicherere Datei zum Weitergeben, das jüngere erledigt dieselbe Aufgabe mit weniger Bytes.

Parquet zu CSV: häufige Fragen

Werden meine Parquet-Dateien irgendwo hochgeladen?

Nein. Diese Umwandlung läuft vollständig in deinem Browser, die Datei verlässt dein Gerät also nicht. Du kannst das selbst nachprüfen: Öffne den Netzwerk-Tab der Entwicklerwerkzeuge und wandle etwas um. Zu sehen sind die Seite selbst und die Statistik- und Werbeanfragen, mit denen dieser Dienst bezahlt wird — und keine einzige, die deine Datei trägt. Hinter genau diesem Paar steckt parquet-wasm, eine WebAssembly-Fassung des Apache-Arrow-Lesers; dein Browser lädt das einmal und behält es dann.

Ist das Umwandeln von Parquet in CSV kostenlos?

Ja. Kein Konto, kein Wasserzeichen und kein Tageskontingent, das sich verbraucht — es läuft auf deinem eigenen Rechner, du darfst also so oft wiederkommen, wie du willst. Dateien bis 100 MB verarbeitet der Browser, 100 auf einmal. parquet-wasm wird auf deinen Rechner geladen und läuft dort — deshalb gibt es dafür keine Zählung.

Geht beim Umwandeln von Parquet in CSV Qualität verloren?

Nein. CSV speichert denselben Inhalt, ohne etwas wegzuwerfen — das Ergebnis ist qualitativ mit dem Original identisch.

Ist Parquet zu CSV verlustfrei?

Es geht nichts verloren. Parquet und CSV speichern ihren Inhalt verlustfrei — die Umwandlung tauscht die Verpackung, nicht die Qualität, und du kannst sie wiederholen, ohne dass sich Schäden aufsummieren.

Lässt sich die CSV-Datei danach bearbeiten?

CSV ist ein Arbeitsformat, Parquet ein fertiges. Zurück kommt bearbeitbarer Text statt eines Bildes der Seite — meist der Grund für die Umwandlung und zugleich ihre Grenze.

Mehr über diese Formate