apache / apache/datafusion

Make the `tdigest` public

Abierto
#8,554 4 comentarios 0 reacciones 0 asignados Ver en GitHub
enhancement
Lenguaje dominante
Rust
Estrellas
9.3k
Forks
2.4k
Merge medio
3 d 11 h
PR fusionados (30 d)
360

Descripción

### Is your feature request related to a problem or challenge?

I would like to build a custom aggregator based on the [tdigest](https://github.com/apache/arrow-datafusion/blob/main/datafusion/physical-expr/src/aggregate/tdigest.rs). The tdigest `mod` is private, and thus I can't use it outside DataFusion. It would be great if it would be changed to poublic to allow custom aggregators based on it.

### Describe the solution you'd like

To allow building new aggregators based on the `tdigest` make it public by changing the following
https://github.com/apache/arrow-datafusion/blob/b276d479918400105017db1f7f46dcb67b52206d/datafusion/physical-expr/src/aggregate/mod.rs#L58
to
```rust
pub mod tdigest
```
and change the visibility in the tdigest `mod` to public too.

### Describe alternatives you've considered

If changing the visibility to public is not possible, I would need to introduce my own tdigest and reproduce a lot of code to make it work as an aggregator. This also means that I need to update the code with each new version of DataFusion.

### Additional context

_No response_

Guía de contribución

Abrir la guía de contribución

Línea de trabajo

Empieza leyendo datafusion/physical-expr/src/aggregate/mod.rs en la declaración del módulo tdigest referenciada; después, inspecciona datafusion/physical-expr/src/aggregate/tdigest.rs para realizar los cambios de visibilidad solicitados. La tarea estará terminada cuando los agregadores personalizados externos puedan acceder al módulo tdigest y a sus elementos públicos necesarios, y las comprobaciones del proyecto sigan pasando.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
rust
Área
databases
Tipo de issue
Nueva funcionalidad
Dificultad
2/5
Tiempo estimado
1-3 horas
Estado de actividad
Estancado
Claridad
Bien especificado
Aptitud para principiantes
38/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.