dewdb
Base de datos distribuida JSON escrita en Rust con replicación y particionamiento integrados. Un solo binario por nodo, sin coordinador externo ni dependencias. HTTP/JSON REST, consistencia fuerte, streams de cambios y failover automático.
Ficha actualizada 26 sept 2026, 12:22 · upstream 26 sept 2026, 11:08 · release v1.1.0
Qué es dewdb
Descripción editorial construida a partir del repositorio, su documentación y sus señales de mantenimiento.
DewDB es una base de datos documental distribuida implementada completamente en Rust que integra replicación, particionamiento (sharding), elección de líder y recuperación ante fallos dentro del mismo proceso. No requiere coordinador externo ni servicio de metadatos separado, lo que simplifica la arquitectura.
El sistema utiliza archivos locales para el almacenamiento con un modelo sin esquema donde las colecciones se crean automáticamente al primer uso. Soporta consultas complejas con 17 operadores de campo, índices secundarios replicados y agregaciones que fusionan totales a través de shards. La durabilidad se garantiza mediante WAL append-only con fsync por grupo.
La licencia Apache 2.0 permite redistribución en infraestructura de terceros. El protocolo HTTP/JSON permite usar cualquier cliente HTTP sin drivers. Soporta autenticación con API keys o tokens bearer, y ofrece métricas Prometheus y logs estructurados.
- Almacenamiento distribuido de documentos JSON sin esquema predefinido
- Replicación automática con failover interno sin intervención manual
- Streams de cambios para aplicaciones en tiempo real con recuperación de posición
- Consultas agregadas multi-nodo con fusión correcta de totales
- Licencia Apache 2.0 permisiva para redistribución en infraestructura de terceros
- Un solo binario por nodo sin Docker ni dependencias externas
- Consistencia linealizable con commits por quórum y atomicidad por documento
- Streams de cambios resumibles con entrega mayoritaria ante failover
- Transacciones limitadas a documentos individuales, sin transacciones multi-documento
- Máximo 8 índices secundarios por colección, todos single-field y no únicos
- Joins deben realizarse en el cliente, sin soporte nativo de joins
- Tamaño máximo de registro almacenado: 10 MiB, cuerpo de petición: 2 MiB
Perfil de infraestructura
Estimación inicial derivada del repositorio y de los servicios detectados.
Despliegue detectado
Qué señales reales de instalación hemos encontrado.
Instalar desde GitHub Releases verificando SHA256. Configurar dew.json con node_id, role (shard/router), listen_addr y data_dir. Para clusters: primary con replicas en peers. Router sin datos enruta por hash collection:key. TLS requiere terminación externa actualmente. No usar Docker ni compose. Reiniciar tras cambios de configuración.
Stack y dependencias
Componentes inferidos a partir de manifests, configuración y documentación.
Puede sustituir a
Relaciones detectadas por el análisis del repositorio y su categoría.
Experiencia real de la comunidad
Ayuda a contrastar la estimación automática con instalaciones reales.
Todavía no hay datos comunitarios para este proyecto.