[Java] Enhancements for Java Dataset API
- Lenguaje dominante
- Java
- Estrellas
- 94
- Forks
- 152
- Merge medio
- 3 d 16 h
- PR fusionados (30 d)
- 11
Descripción
### Describe the enhancement requested
Some important changes are suggested in the list below to improve the developer experience with the Dataset API of java/arrow. Most of these suggestions if implemented will lead to consistency with the [pyarrow dataset API](https://arrow.apache.org/docs/python/generated/pyarrow.dataset.dataset.html#pyarrow.dataset.dataset).
1. Support for providing Filesystem options like access_key etc. programmatically. Currently only env vars are supported.
2. Support for globbed paths and directories
3. Excluding invalid files
4. Additional documentation for already implemented functionality
1. Reading and writing to remote/ cloud stores (HDFS, S3, GCS ...)
2. Clarification of behaviour when reading multiple files. Why 2 or more files supplied, they may have different schema. Currently, only the schema of the last files is shown by `.inspect()` and this is not documented anywhere. This behaviour is the same in pyarrow. Maybe it's a good idea to allow users to provide a strategy like Error, Merge, LastFile etc.
3. Reading and writing partitioned datasets
4. Difference between `FileSystemDatasetFactory.inspect()` and `FileSystemDatasetFactory.finish().newScan(...).schema()`. Which one to use in which case?
5. Env vars for Filesystem are not documented
Please let me know if the above make sense, I can help with PRs for the same.
### Component(s)
Java
Guía de contribución
Línea de trabajo
Comience con los puntos de entrada de la Java Dataset API nombrados en el issue, especialmente FileSystemDatasetFactory.inspect() y finish().newScan(...).schema(). Divida las solicitudes generales en cambios con alcance separado para las opciones del sistema de archivos, las rutas, los archivos no válidos, el comportamiento del esquema, los Datasets particionados y la documentación. Done debe definirse mediante un subconjunto acordado con la implementación o documentación correspondiente y su validación.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- java
- Área
- data
- 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
- 25/100