Cita:
Iniciado por Chico3001
La segunda es optimizar el algoritmo de calculo, cuando un cliente pida mostrar una grafica de todo el año (por ejemplo) no pidas los datos de cada segundo, realiza los calculos con datos de cada dia (por ejemplo), y conforme el cliente solicite mostar algo mas a detalle entonces vas pidiendo datos mas detallados, pero recortando el tiempo total, osea, si te piden calculos de un año usas un dato representativo de cada dia, si te piden un mes usas un dato representativo de cada hora limitado a los 30 dias que te pidieron y asi sucesivamente
Eso sería lo ideal, pero no estoy seguro de como hacerlo, pero por alguna razón aunque solo quiera mostrar 1 mes, demora bastante, y es más que nada por el ordenamiento, por ejemplo
SELECT * FROM tablagigante,sensor,Trucks,Mines WHERE 1 AND tablagigante.BoxId=sensor.BoxId AND tablagigante.SensorID=sensor.id AND sensor.bran='9' AND tablagigante.BoxId=Trucks.BoxId AND Trucks.Mine=Mines.MineId AND Mines.Company='1' AND (`Year`>12 OR (`Year`=12 AND `Month`>01) OR (`Year`=12 AND `Month`=01 AND `Day`>=1)) AND (`Year`<12 OR (`Year`=12 AND `Month`<01) OR (`Year`=12 AND `Month`=01 AND `Day`<=30)) ORDER BY `Year`,`Month`,`Day`,`Time`;
esta consulta demora 2.6305 en PHPMyAdmin y 19.95426 segundos desde el sistema web (servidor aparte)
y eso que son solo 18 dias (del 1 de enero a hoy)
Luego de esos 20 segundos recien empieza a cargar el gráfico....