Parquet protobuf: List wrapper should be optional
- Lenguaje dominante
- Java
- Estrellas
- 3.1k
- Forks
- 1.6k
- Merge medio
- 3 d 12 h
- PR fusionados (30 d)
- 33
Descripción
Following , parquet-protobuf will conform to the specs[1] regarding the definition of lists and will adopt the 3-level structure:
```java
*required* group my_list (LIST) {
repeated group list {
optional binary element (UTF8);
}
}
```
The first level has the repetition level **required**, however this won't allow making the distinction between a null list and an empty one.
This ticket is for changing the root level repetition to **optional** as following:
```java
*optional* group my_list (LIST) {
repeated group list {
optional binary element (UTF8);
}
}
```
This will allow differentiating between null and empty lists.
[1] https://github.com/apache/parquet-format/blob/master/LogicalTypes.md#lists
**Reporter**: [Benoit Hanotte](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=b.hanotte)
**Note**: *This issue was originally created as [PARQUET-1216](https://issues.apache.org/jira/browse/PARQUET-1216). Please see the [migration documentation](https://issues.apache.org/jira/browse/PARQUET-2502) for further details.*
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Línea de trabajo
Comienza localizando la implementación de parquet-protobuf de los esquemas de listas y compárala con la Parquet lists specification enlazada en el issue y con el cambio de parquet-mr referenciado. Se considera terminado cuando la root LIST group es opcional, mientras que la estructura anidada de lista y elemento permanece como se muestra, lo que permite distinguir entre listas null y vacías.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- data-engineering
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 35/100