Muchas empresas tienen procesos nocturnos o con
cierta periodicidad de diferentes datos con algoritmos complejos con la
finalidad de hacer más rápido el acceso a ellos durante el día utilizando los
sistemas de información, todo esto corriendo un aceptable riesgo de no tener la
información en línea, la manera más común en la que se llegó a ésta decisión
fue que el proceso anterior que accedía a la información en línea comenzaba a
ser cada vez más lento, pasando de algunos segundos de espera a algunos
minutos, se decide entonces trabajar con datos pre-procesados y se montan los
algoritmos de procesamiento en un Trabajo periódico normalmente nocturno que
puede tomar su tiempo durante la noche para que en la mañana la información sea
accedida rápidamente, es una técnica muy buena y muy funcional…
Sin embargo… La mayoría de las veces solo hacen un traspaso de los algoritmos existentes al Trabajo periódico sin detenerse a analizar si el procesamiento de éstos algoritmos tienen algún problema y que esto sea la razón por la cual se hace cada vez más lento (atribuyéndolo por default al crecimiento en la cantidad de datos a procesar) y lo único que se logra con ésta decisión es tener un Trabajo periódico con algunas adecuaciones que cada vez que se ejecuta se tarda un poco más, pero como la noche es larga no es algo que se aprecie a simple vista.
Sin embargo… La mayoría de las veces solo hacen un traspaso de los algoritmos existentes al Trabajo periódico sin detenerse a analizar si el procesamiento de éstos algoritmos tienen algún problema y que esto sea la razón por la cual se hace cada vez más lento (atribuyéndolo por default al crecimiento en la cantidad de datos a procesar) y lo único que se logra con ésta decisión es tener un Trabajo periódico con algunas adecuaciones que cada vez que se ejecuta se tarda un poco más, pero como la noche es larga no es algo que se aprecie a simple vista.
En Dawcons nos preocupamos por los
procesamientos prolongados, pues significan mayor utilización de los Recursos
como el acceso a disco, el uso de procesadores por largo tiempo y por tanto el
calentamiento continuo y desgaste de ventiladores, etc. Entonces, esto
provocará a la larga un mayor costo de mantenimiento o reparación y por otro
lado un mayor consumo de energía, pues un Servidor que trabaja durante el día
sirviendo aplicaciones a la empresa y durante la noche procesando datos de
manera forzada, es un Servidor que contamina todo el tiempo y tiene elevados
requerimientos energéticos constantemente, reduciendo su tiempo útil de vida.
Es importante entonces optimizar nuestros
procesamientos de datos para asegurar que se están aprovechando todos los
beneficios de las tecnologías que utiliza o que tiene a su disposición en el
Hardware que lo contiene, se pueden realizar análisis de optimización de Querys
o Procedimientos Almacenados con las mejores prácticas correspondientes al
Motor de datos elegido, utilización de Hilos y paralelismo para aprovechar el
MultiCore al máximo, reestructuras de las tablas para Normalizarlas al nivel
adecuado logrando optimizar el acceso a datos, combinación de procesamientos de
algoritmos en Base de Datos con procesamiento en Compilados para el caso de
algoritmos que se pretenden forzar a procesarse con Funciones de Base de Datos
cuando se pueden procesar de manera más natural en lenguajes de programación.
El objetivo de la optimización deberá ser obtener los mismos resultados,
utilizando al máximo el MultiCore del Hardware en el menor tiempo posible.
Dawcons lleva a cabo la optimización por medio de la participación dentro del programa de apoyo a desarrolladores de Intel, el cual proporciona herramientas, metodologías y mejores prácticas para el correcto aprovechamiento de la plataforma de hardware de Intel.
Armando Olmos Sánchez
Director de Producción
Director de Producción
No hay comentarios:
Publicar un comentario