apache / apache/parquet-java

ParquetWriter.Builder (and subclasses) instances are hard to reuse

Aperta
#2,321 0 commenti 0 reazioni 0 assegnatari Vedi su GitHub
Component: Java Component: Parquet Priority: Major Type: enhancement
Lingua principale
Java
Stelle
3.1k
Fork
1.6k
Merge medio
3g 12h
PR unite (30g)
33

Descrizione

Hi,

The builders to create ParquetWriter and AvroParquetWriter are very useful, but unfortunately their instance are very hard to reuse when you want to build multiple instance of ParquetWriter for different files but similar settings.

This is a shame because that's one of the concern solved by the builder pattern: from one builder you can build multiple things with similar parameters.

It would be useful if either:
- it was possible to create a builder from a pre-existing builder (except for the file name)
- it was possible to change the file name specified in the builder (and not have it definable only via constructor of the builder).

This would allow people to pass a set of options in the form of a builder to an object responsible of generically instantiating a PaquetWriter for multiple files for example.

 

**Reporter**: [Victor](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=victor.noel)

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

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

Start by locating ParquetWriter.Builder and the AvroParquetWriter builder subclasses. Compare the two requested reuse approaches and their builder state; done means one builder can create multiple writers for different files while preserving shared settings, with coverage for the supported builder types.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
java
Ambito
data-engineering
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
38/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.