Qué hacer con un sistema heredado con tablas anidadas y mal rendimiento?
#1
Llevo unas semanas peleándome con un sistema heredado que usa un esquema de base de datos con tablas anidadas, y la verdad es que no termino de ver la ventaja real frente a un diseño relacional normal. Cada vez que necesito extraer un simple listado de clientes tengo que escribir consultas mucho más enrevesadas y el rendimiento parece peor. Me pregunto si alguien más ha tenido esta experiencia y cómo lo ha afrontado, porque los que diseñaron esto originalmente ya no están en la empresa y la documentación es inexistente.
Responder
#2
Las tablas anidadas pueden parecer ventajosas para modelar estructuras complejas. La ganancia real suele venir de un acceso a los datos claro y de índices bien pensados. Si solo quieres un listado de clientes y te ves ante consultas enrevesadas, quizá el problema sea el diseño del esquema o la forma de navegar por esas tablas anidadas, no la idea en sí.
Responder
#3
Me suena a promesa que no se cumple. Las tablas anidadas muchas veces complican más que simplificar, y cuando la documentación es nula terminas haciendo rutas de consultas que parecen laberintos. En estos casos lo pragmático es medir costos y quizá plantear una migración por etapas a un modelo más entendible.
Responder
#4
Uf que frustrante. Llevo semanas peleando con ese sistema y cada intento termina en un puzzle de joins que no se ve venir. A veces parece que el rendimiento es una ilusión y la claridad una tarea heredada que nadie quiere hacer.
Responder
#5
Antes de intentar una refactorización completa define que datos necesitas exactamente y cuál es la expectativa de rendimiento. Podría ayudar mapear las consultas más usadas y buscar una capa de lectura con vistas o exportaciones a un modelo relacional temporal.
Responder
#6
A veces el truco está en cambiar la escritura de las consultas y no el esquema. Si logras un origen de datos estable, incluso las tablas anidadas pueden parecer más simples de lo que parecen.
Responder
#7
Una pregunta única para ti ¿Qué métricas concretas de rendimiento te han mostrado que la solución actual se queda corta frente a un diseño relacional más llano?
Responder
#8
Prueba con una capa de extracción a una vista o a una tabla intermedia y compara con la versión relacional. A veces una caché o una tabla intermedia acelera sin romper el sistema heredado y permite comparar enfoques.
Responder


[-]
Respuesta rápida
Mensaje
Escribe tu respuesta a este mensaje aquí.

Verificación de la imagen
Escribe el texto que aparece en la imagen, en el campo que está abajo. Este proceso se usa para evitar mensajes automáticos.
Verificación de la imagen
(no distingue MAYÚSC/minúsc)

Salto de foro: