EdinWare
Servicios
Casos de Éxito
Apps
Contacto
IT Driving Performance
• Cost • Quality • Speed
Casos de Éxito

Optimización de Desempeño

 Caso: "Optimización de base de datos DBDeshuese: Reporte Lote de Producción

 

Caso de estudio

Grupo GUSI es una empresa ubicada en el municipio de Tamuín S.L.P. en donde se llevan a cabo producción, empacado, distribución y venta de carne de bovino. Para cada uno de estos procesos cuenta con diferentes sistemas de información desarrollados por personal de la misma empresa.

Uno de estos sistemas es la aplicación Deshuese, mediante la cual, entre otras cosas, se lleva un control sobre la información desde que la carne es recibida, procesada, almacenada y embarcada.

Dentro de los principales problemas en el sistema estaban: "El tiempo necesario para la generación de algunos reportes"

Identificación de proceso

El proceso seleccionado para aplicar la metodología de optimización fue la generación de un reporte que muestra  información relacionada a un lote de producción.

El reporte consta de 3 partes, un encabezado donde se muestra información del cliente de destino, un detalle del producto que entró al proceso y un detalle del producto final luego de haber sido procesado.

La ejecución de este reporte tardaba una cantidad de tiempo considerable para mostrar el resultado, tal como se observa en la siguiente tabla:

Lote de prueba
Tiempos (mm:ss)
Antes
2289
03:00
1788
03:54
869
03:25
1974
03:01
2090
03:02

Aplicación de la metodología

Fase 1 Schema de Base de Datos: para algunas tablas de la base de datos se aplicó el concepto de de-normalizacion, la cual consiste en la inserción de datos redundantes a través de la creación de nuevas columnas en varias de las tablas para reducir la cantidad de tablas combinadas en las consultas utilizadas para la generación del reporte. Además, se modificó el tipo de dato definido en varias columnas para seleccionar uno más adecuado al tipo de información que almacenaban esas columnas.

Fase 2 Query Redefine: se analizó la lógica de las consultas que generan el reporte y se realizaron modificaciones para eliminar la utilización de cursores y consultar la información directamente de las tablas base en lugar de hacerlo a través de vistas o funciones recursivas que hacían más lenta la consulta de la información.

Fase 3 Indexing: se analizó y diseño una configuración en los índices para obtener el mayor beneficio en todas las sub-consultas utilizadas para la generación del reporte.

Fase 4 Isolate: se configuró el nivel de aislamiento de las transacciones para permitir mayor grado de concurrencia entre los usuarios que utilizan este reporte.

Resultados

Luego de haber realizado las modificaciones en cada una de las etapas de la metodología, los tiempos obtenidos para la generación del reporte se muestran en la siguiente tabla.

Lote de prueba
Tiempos (mm:ss)
Después
2289
00:14
1788
00:21
869
00:18
1974
00:16
2090
00:15

Conclusión

Cada uno de los cambios realizados en las diferentes etapas de la metodología contribuye sin lugar a duda a la optimización de los procesos que utilizan la base de datos, siendo las primeras dos etapas las que mayores beneficios aportan tanto a las etapas siguientes como a otros procesos que también se pueden ver beneficiados por la optima utilización de recursos y acceso a la información.

 

Cuando estas modificaciones se realizan en el orden correcto y por un especialista de bases de datos, los resultados obtenidos pueden ser muy contundentes.


EdinWareServiciosCasos de ÉxitoAppsContacto
Monitoring - Management - Support - Performance Tuning