apache / apache/parquet-java

Use the same default page size across different language bindings

Ouverte
#2,116 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub
Component: Parquet Priority: Major Type: task
Langage dominant
Java
Étoiles
3.1k
Forks
1.6k
Merge moyen
3 j 12 h
PR mergées (30 j)
33

Description

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.*

Guide de contribution

Aucun guide de contribution indexé pour ce dépôt

Piste de recherche

Examinez les valeurs par défaut actuelles dans parquet-format et parquet-mr, notamment parquet-column/src/main/java/org/apache/parquet/column/ParquetProperties.java, et comparez-les à la valeur de l’Impala writer citée dans l’issue. Le travail doit attendre les index de colonne et les mesures ; il est considéré comme terminé lorsqu’une stratégie de valeurs par défaut approuvée a été choisie et implémentée de manière cohérente dans tous les bindings.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Évaluation

Stack technique
java
Domaine
data-engineering
Type d'issue
Fonctionnalité
Difficulté
5/5
Temps estimé
Plus d'une semaine
Activité
À l'abandon
Clarté
À clarifier
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.