Proposal: Add DDSketch (Relative-Error Quantile Sketch)
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 45/100
Línea de trabajo
Empieza leyendo el paper de DDSketch y la referencia sketches-java de Datadog. La implementación propuesta debe estar en ddsketch.hpp e incluir serialización, deserialización, pruebas unitarias y benchmarks. Se considera terminado cuando exista un DDSketch autocontenido y fusionable, con precisión relativa configurable y memoria acotada, sin cambiar las APIs existentes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Proposal: Add DDSketch (Relative-Error Quantile Sketch)
Summary:
This issue proposes adding an implementation of DDSketch, a mergeable quantile sketch with relative-error guarantees, to the datasketches-cpp library.
Benefits:
- Relative-error guarantees
- Mergeability for distributed processing
- Predictable memory usage
- Used in production (Datadog, OpenTelemetry)
References
- VLDB 2019: DDSketch Paper
- Datadog's sketches-java repo
Proposed Design
- New class under
ddsketch.hpp - Logarithmic mapping of input values to buckets using configurable relative accuracy
- Compact, bounded memory footprint with optional bucket collapsing
- Mergeable histogram-style structure
- Serialization and deserialization support
- Unit tests and benchmarks included
Compatibility
- No changes to existing APIs
- Implementation will be self-contained
- Optional: initial release could be marked experimental
Next Steps
If there is community interest, I’m happy to:
- Share a detailed design document
- Begin work on the implementation and submit a PR
- Iterate based on feedback
Would the maintainers be open to including DDSketch? Are there specific design or compatibility considerations I should address before proceeding?
- Lenguaje dominante
- C++
- Estrellas
- 274
- Forks
- 89
- Merge medio
- 1 d 16 h
- PR fusionados (30 d)
- 10
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de apache/datasketches-cpp
-
Dificultad 4/5 3-5 días Aptitud para principiantes 68/100
apache/datasketches-cpp#533 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
apache/datasketches-cpp#502 · 12 comentarios · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
Reorganization proposalAbierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
apache/datasketches-cpp#419 · 6 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
apache/datasketches-cpp#416 · 13 comentarios ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
apache/datasketches-cpp#157 · 4 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de apache/datasketches-cpp
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
shadps4-emu/shadps4-qtlauncher#453 ·
Los mantenedores suelen responder en 2 días
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
google/differential-privacy#516 ·
-
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
plengauer/DXGIOutputDuplication#76 ·
Los mantenedores suelen responder en 1 día
-
Feature
Dificultad 1/5 Menos de una hora Aptitud para principiantes 65/100
Narezzurri/OpenVPN-Config-Manager#95 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
rhalbersma/xstd-bits#314 ·
Los mantenedores suelen responder en 1 día