Gracias Diego!! sí creo que lo mejor es precalcular lo que pueda (async para que permita seguir) y el resto en el sql en background, algo asi había pensado, son cotizadores que necesitan calcular muchos datos a partir de parametros base y tablas existentes para despues hacer cálculos resumen con toda la data precalculada, hoy usan matrices enormes y la performance es terrible. Mil gracias por la respuesta a vos y a los que responden por la disposición a dar una mano siempre! Saludos Roxana
From: Diego Jancic Sent: Thursday, April 16, 2015 8:02 PM To: [email protected] Subject: [puntonet] consulta performance Hola Roxana, Depende del tipo de calculo que tengas que hacer y del tiempo que le quieras dedicar. Lo mas performante en cuanto a lectura es ir calculando la info que necesitas a medida que vas agregando nueva información. Esto incrementa mucho el espacio que necesitas pero a la hora de leer, la consulta es trivial. Por eso te conviene guardar todos los contadores, sumas y demás ya calculados. Otra solución mas fácil es calcularlo en el sql server. Si lo ejecutas en background en general es viable, pero si lo necesitas en real-time no te va a servir. También podes hacer data warehousing, pero depende de tus conocimientos si te conviene o no gastar tiempo en ese. La tercer opción, calcularlo en código, depende de la cantidad de datos que tengas y la complejidad de los cálculos. Si la data no es mucha (entra en memoria) y los cálculos son muy complejos, entonces si podes hacer esto. En los casos mas extremos donde tenés mucha info y los cálculos son muy complejos, yo iría agregando y precalculando durante escritura (incluso de forma async) Si das mas info de que tipo de cálculos tenés que hacer quizás te puedo decir mejor. Abrazo, Diego On Apr 16, 2015 5:41 PM, "Ing. Roxana Leituz" <[email protected]> wrote: Estimados.. como siempre recurro a los que saben! Tengo que hacer una aplicación donde tengo que calcular muchos datos utilizando datos ingresados por pantalla por un lado y datos guardados en la base por el otro. La pregunta es por la performance.. Tomo mis datos de ingreso, los paso a la base y dejo que sql haga todo, supongo que puedo trabajar de modo asincrono, o cargo datos en memoria , y proceso, aunque me parece una barbaridad sobrecargar la memoria con matrices enormes..,pero consulto.. a lo mejor estoy equivocada o hay opciones que desconozco, la aplicación es web . muchas gracias!!
