apache / apache/parquet-java

Enhance ParquetWriter with exposing in-memory size of writer object

Offen
#1,425 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
Component: Parquet Priority: Major Type: enhancement
Vorherrschende Sprache
Java
Sterne
3.1k
Forks
1.6k
Ø Merge
3 T. 12 Std.
Gemergte PRs (30 T.)
33

Beschreibung

While using ParquetWriter and before closing it to write the content out to the disk, there is no way to check/estimate the size of the output file. This is useful in case we want to close files and upload them based on a minimum size threshold. Since ParquetWriter keeps everything in memory and only writes it out to disk at the very end when writer is closed, it is not possible to have an estimate of the output file size before closing the writer.

Based on Parquet documentation, the data is written into memory object in the final format, meaning that the size of the object in memory is the very close to the final size on disk. it would be great if you can expose the current size of the parquetWriter object in memory. It is true that such a size will be different than the final output size because of adding the schema and other metadata at the end of the file but it still gives a close estimation of the output file size that will be very useful when reading/writing streams.

**Reporter**: [Reza Shiftehfar](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=reza79)

**Note**: *This issue was originally created as [PARQUET-209](https://issues.apache.org/jira/browse/PARQUET-209). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Rechercherichtung

Beginne damit, den Lebenszyklus der im Speicher befindlichen Ausgabe von ParquetWriter vor close nachzuverfolgen und zu ermitteln, wo seine aktuelle Größe verfügbar gemacht werden könnte. Prüfe die vorhandenen Writer-Tests und vergleiche die gemeldete Schätzung mit der endgültigen Dateigröße; abgeschlossen ist die Aufgabe, wenn Aufrufer vor dem Schließen des Writers eine brauchbare Größenschätzung erhalten können.

Vom Indexierungsmodell aus dem Issue-Text verfasst.

Bewertung

Tech-Stack
java
Bereich
data-engineering
Issue-Typ
Feature
Schwierigkeit
4/5
Geschätzter Aufwand
3-5 Tage
Aktivitätsstatus
Veraltet
Klarheit
Größtenteils klar
Anfängerfreundlichkeit
42/100

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.