Está en la página 1de 1

Optimizacin de Indicadores- Centria

Problema
La lgica de las consultas a la listas de SharePoint se realizaban correctamente. Sin embargo, los procesos se demoraban mucho tiempo en ejecutarse, debido a que se usaban diferentes metodologas. Los tiempos oscilaban entre 10 a 20 segundos, lo cual se consideraban excesivos.

Diagnstico
Se encontr dentro del cdigo un algoritmo recursivo en todos los mtodos que contemplaban a los indicadores. Adems, se verific que las consultas a las fuentes de datos (listas de SharePoint) no usaban un estndar comn, y se realizaba con distintas tecnologas (CAML, Linq, DataTables). Por otra parte, las columnas no estn indexadas en muchos casos, en la que tambin influye en el tiempo de consulta. Las consultas se realizan directamente al servidor cuando se realizan alguna bsqueda.

Solucin
Se modific el algoritmo de consulta, en la que se contempla dentro de cada mtodo usado para obtener el indicador, una sola consulta de datos CAML a SharePoint y los datos calculados con el motor Linq de .NET, optimizando claramente el tiempo de carga. Se retir los mtodos recursivos que originaban las mltiples consultas CAML en cada bsqueda. Adems, se index algunas columnas implicados en las consultas CAML.

Recomendaciones
Se recomienda no usar columnas calculadas para realizar filtros, ya que estas columnas no se pueden indexar. Se recomienda usar la cache del servidor. Esto dependera de la variacin de la informacin, ya que la consulta no sera directa, sino a la memoria del servidor, pero sera mucho ms rpida. Se recomienda optimizar el cdigo con un modelamiento de datos. Esto permitira muchas caractersticas de la programacin orientada a objetos, tales como escalabilidad, mejor rendimiento, extensibilidad. Adems, permitira un mejor mantenimiento a futuro.

También podría gustarte