apache / apache/parquet-java

Use the same default page size across different language bindings

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

Descrizione

Currently there are many different page size recommandations/defaults in use:
- [parquet-format](https://github.com/apache/parquet-format#configurations) recommends 8 KB.
- [parquet-mr](https://github.com/apache/parquet-mr/blob/master/parquet-column/src/main/java/org/apache/parquet/column/ParquetProperties.java#L46) uses 1 MB.
- [Impala](https://github.com/apache/impala/blob/daff8eb0ca19aa612c9fc7cc2ddd647735b31266/be/src/exec/hdfs-parquet-table-writer.h#L83) uses 64 KB.

These values (and other language bindings not listed above) should be consistent.

To pick a sensible new value, we may need to do some measurements. Because of this, we shall wait for column indexes to be implemented before picking a new value.

The new default page size does not necessarily have to be a single value any more, we have several options:
- A single default page size, as before.
- Different page size defaults depending on the type.
- Using a specified number of values instead of data size (e.g., every page contains 10000 values).

**Reporter**: [Zoltan Ivanfi](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=zi) / @zivanfi

**Note**: *This issue was originally created as [PARQUET-1190](https://issues.apache.org/jira/browse/PARQUET-1190). 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

Esamina i valori predefiniti correnti in parquet-format e parquet-mr, incluso parquet-column/src/main/java/org/apache/parquet/column/ParquetProperties.java, e confrontali con il valore dell’Impala writer citato nell’issue. Il lavoro dovrebbe attendere gli indici di colonna e le misurazioni; è considerato completato quando viene scelta e implementata in modo coerente una strategia concordata per i valori predefiniti tra tutti i binding.

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

Valutazione

Stack tecnologico
java
Ambito
data-engineering
Tipo di issue
Funzionalità
Difficoltà
5/5
Tempo stimato
Più di una settimana
Stato di attività
Ferma
Chiarezza
Da chiarire
Idoneità per principianti
25/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.