Transforma Cualquier Base de Datos Relacional en un Grafo de Conocimiento
dgi se conecta a su base de datos, recorre todo el esquema y produce un grafo enriquecido donde cada tabla, columna, índice, clave foránea, vista y procedimiento almacenado se convierte en un nodo — y cada relación estructural o lógica en una arista dirigida tipada. En un solo comando.
dgi --config production.toml
Parsing Estático de Código SQL
Deduce aristas implícitas DEPENDS_ON analizando vistas y procedimientos almacenados sin ejecutar código SQL ni impactar el rendimiento.
Conectores Nativos Multi-Motor
Drivers de alta velocidad para PostgreSQL 13+, MySQL 8+, MariaDB 10.6+ y Microsoft SQL Server 2019+ con tests de integración automatizados.
4 Formatos de Exportación
Exporta a HTML interactivo autónomo, GraphML para Gephi/Cytoscape, JSON estructurado para diffs de entornos o importación directa a Neo4j via Bolt.
Las Bases de Datos Relacionales Crecen y Nadie Sabe Qué las Usa
Tras años en producción, las bases de datos que nadie entiende del todo son las que todos temen tocar. Las claves foráneas cuentan parte de la historia, pero las vistas y procedimientos crean dependencias invisibles en el cuerpo SQL.
Las columnas quedan obsoletas pero nunca se eliminan por temor a romper reportes o servicios. Las migraciones se retrasan por falta de visibilidad de impacto. Los diagramas ER quedan desactualizados en un solo sprint.
dgi fue construido para resolver esto. Lee la base de datos directamente — sin anotaciones manuales ni metadatos de ORM — haciendo que su capa de datos sea visible y consultable.
[connection]
driver = "postgres" # postgres | mysql | mariadb | sqlserver
host = "localhost"
port = 5432
username = "miusuario"
password = "miclavesegura"
database = "mibase"
[export]
format = "html"
output = "./grafo.html"
# Ejecutar introspección:
# $ dgi --config production.toml
Objetos y Relaciones Capturadas
Cada objeto del esquema se convierte en un nodo. Cada relación estructural o lógica en una arista dirigida tipada.
| Tipo de Arista | Nodo Origen | Nodo Destino | Técnica de Extracción |
|---|---|---|---|
CONTAINS |
Database, Schema | Table, View, Procedure | Recorrido del catálogo de esquemas del motor |
HAS_COLUMN |
Table | Column | Introspección del information schema de columnas |
HAS_INDEX |
Table | Index | Parsing de índices simples, primarios y compuestos |
REFERENCES |
Table | Table | Declaración explícita de Foreign Key Constraints |
DEPENDS_ON |
View, Procedure | Table | Análisis estático de código SQL (Cero ejecución requerida) |
Cómo Usan dgi los Equipos de Ingeniería
1. Análisis de Impacto Previo a Migraciones
Antes de modificar una columna o borrar una tabla, ejecute consultas Cypher en Neo4j para listar al instante cada vista y procedimiento almacenado que depende de ella.
MATCH (n)-[:DEPENDS_ON]->(t:Table {name: "subscriptions"})
RETURN n
2. Auditoría de Esquema e Índices Faltantes
Identifique en segundos todas las tablas del esquema que carecen de índices secundarios o poseen FKs sin indexar mediante una sola consulta de grafo.
MATCH (t:Table)
WHERE NOT (t)-[:HAS_INDEX]->(:Index {is_primary: false})
RETURN t.name
3. Detección de Desviación entre Entornos
Exporta staging y producción a JSON y compara los grafos en tu pipeline CI para detectar hotfixes manuales, columnas desalineadas o índices no replicados.
4. Documentación Viva e Interactiva
Genera un archivo HTML autónomo con visor interactivo Cytoscape.js. Comparte mapas visuales de la arquitectura con equipos que no tienen acceso directo a la base de datos.
Diseñado en Rust para Máximo Rendimiento
- ✔ Sin Pausas de Garbage Collection — Ejecución ultrarrápida en pipelines de CI y scripts de operaciones con mínimo consumo de RAM.
- ✔ Drivers Nativos — Basado en
sqlx(PostgreSQL, MySQL, MariaDB) ytiberius(SQL Server). - ✔ Grafo Interno en Memoria — Utiliza la librería de grafos de alto rendimiento
petgraphde Rust. - ✔ Tests de Integración Reales — Probado contra instancias en contenedores Docker de PostgreSQL 13+, SQL Server 2019+, MySQL 8+ y Neo4j.
Motores de Base de Datos Soportados
| Motor | Versión Mínima | Estado |
|---|---|---|
| PostgreSQL | 13+ | Producción |
| MySQL | 8.0+ | Producción |
| MariaDB Server | 10.6+ | Producción |
| Microsoft SQL Server | 2019+ | Producción |
Explore el Grafo de su Base de Datos Hoy Mismo
dgi está licenciado bajo Business Source License 1.1. Código abierto para evaluación y uso interno no comercial, convirtiéndose a Apache 2.0 en 2029-01-01. Contacte con nuestro equipo para licencias comerciales enterprise.