apache / apache/parquet-java

Limit the number of rows per block and per split

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

Description

We use Parquet to store raw metrics data and then query this data with Hadoop-Pig.

The issue is that sometimes we end up with small Parquet files (~80mo) that contain more than 300 000 000 rows, usually because of a constant metric which results in a very good compression. Too good. As a result we have a very few number of maps that process up to 10x more rows than the other maps and we lose the benefits of the parallelization.

The fix for that has two components I believe:
1. Be able to limit the number of rows per Parquet block (in addition to the size limit).
2. Be able to limit the number of rows per split.

**Reporter**: [Quentin Francois](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=QuentinFra)
#### Externally tracked issue: [https://github.com/apache/parquet-mr/pull/251](https://github.com/apache/parquet-mr/pull/251)

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

Commencez par examiner les exigences de Parquet concernant les lignes/blocs et les splits dans cette issue ainsi que la pull request 251 suivie en externe, en accordant une attention particulière à la parallélisation des requêtes Hadoop-Pig. Le travail sera considéré comme terminé lorsque des limites de lignes configurables seront prises en charge à la fois pour les blocs et les splits, tout en préservant le comportement existant de la limite de taille.

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

Évaluation

Stack technique
hadoop, java
Domaine
data-engineering, distributed-systems
Type d'issue
Fonctionnalité
Difficulté
4/5
Temps estimé
3-5 jours
Activité
À l'abandon
Clarté
Plutôt claire
Accessibilité débutants
25/100

Recevez les nouvelles issues par e-mail

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