apache / apache/parquet-java

Add rewriter version to Parquet footer

Abierto
#2,649 0 comentarios 0 reacciones 0 asignados Ver en GitHub
Component: Parquet Priority: Major Type: enhancement
Lenguaje dominante
Java
Estrellas
3.1k
Forks
1.6k
Merge medio
3 d 12 h
PR fusionados (30 d)
33

Descripción

Parquet footer records the writer's version in the field of 'create-by'. As we introduce several rewrites, the new file is written partially by the rewriter. In this case, we need to record the rewriter's version also.

Some questions (about a common rewriter) we need to answer before step forward:

What would be the place of the rewriter versions? (New specific field or key-value metadata? Which key shall we use?)
Shall we somehow also save what the rewriter has done? How?
At what level shall we copy the original created_by field and what level shall we write the version of the rewriter to that field instead? (What different levels are possible?)
From the introduction of this rewriter(s) field in case of any related writer version dependent fix we need to check this field as well and not only the created_by one.

**Reporter**: [Xinli Shang](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=shangx@uber.com) / @shangxinli
**Assignee**: [Xinli Shang](https://issues.apache.org/jira/secure/ViewProfile.jspa?name=shangx@uber.com) / @shangxinli

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

El issue no especifica archivos fuente, pruebas ni puntos de entrada. Empieza examinando el manejo del footer de Parquet y el campo created_by existente; después, determina dónde deben ubicarse la versión del rewriter y los detalles del rewrite, cómo debe conservarse created_by y cómo deben detectar estos elementos los fixes que dependen de la versión. Se considera terminado cuando estas cuestiones de diseño estén decididas y el comportamiento resultante del footer esté implementado y probado.

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
Nueva funcionalidad
Dificultad
5/5
Tiempo estimado
Más de una semana
Estado de actividad
Estancado
Claridad
Necesita aclaración
Aptitud para principiantes
15/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.