Ver Mensaje Individual
  #15 (permalink)  
Antiguo 20/01/2012, 05:32
Avatar de jercer
jercer
 
Fecha de Ingreso: octubre-2003
Mensajes: 373
Antigüedad: 20 años, 6 meses
Puntos: 13
Respuesta: Sistema sobrecargado

Buenas, 2 cosas:

Cita:
VAYA! la verdad es que la idea suena bastante bien, incluso podrían ser tablas mensuales o semanales, por ejemplo

mi_tabla_2011_10
mi_tabla_2011_11
mi_tabla_2011_12
mi_tabla_2012_01
mi_tabla_2012_02

haciendo eso me evitaría crear la "tabla padre", no?

ahora el problema de sobrecarga no se soluciona, ya que si quiero por ejemplo tomar un año completo y ordenar todos los datos por presión o temperatura del neumático tendría que tomar todas esas tablas...
Si lo haces así, claro que te ahorrarías la tabla padre, respecto a lo segundo:

UNION

ó

http://dev.mysql.com/doc/refman/5.0/...ge-engine.html

Fijate en las ventajas:
Las tablas no tienen que estar en la misma base de datos que la tabla MERGE misma.

Otra cosa es que si te piden desde el primer día hasta el último, hay si tendrías que recorrer todos los datos (opción ocp001a ¿?)



Cita:
No es mala idea, la verdad me gustaría hacer eso o un promedio de esos 10, pero no sabría como hacer la consulta, además de que lo normal es que se ocupen filtros y ese filtro podría hacer que justamente el resultado de ID 10, 15 y 20 no estén en el filtro, un ejemplo:

id equipo
1 1
2 2
3 1
4 1
5 2
6 1
7 1
8 2
9 1
10 2

SELECT * FROM tabla WHERE equipo='1' AND id%5=0;
Algo como:

SET @cont = 0;
SELECT @num := COUNT(id) FROM tabla;
SELECT *, (@cont := @cont +1) AS INCREMENTAL
FROM tabla
GROUP BY id
HAVING INCREMENTAL % CEILING(@num / 5) = 1;




Por otro lado, lo que dice ocp001a, parece muy interesante, siguiendo con su tema, podrías hacer una BD de manejo de datos y otra BD de mostrado de datos, de forma que la primera sólo sea para insertar, modificar datos y la segunda cree las tablas para ser visualizadas.

Esto podría evitar el problema de sobrecarga, ya que el trabajo lo divides en 2 y lo puedes optimizar para 2 tipos de "requerimiento" diferentes, la primera tratamiento de datos, la segunda mostrado de datos.


Me parece que la idea es muy buena y esto podría hacer mejorar el sistema muchisimo.

No obstante hacer eso no quita que te plantees optimizar esa tabla, haciendola más ligera, ya sea "cortandola" o directamente borrando datos, ahora estoy pensando, sirve de algo, saber como estaba el neumático de un camión el mes pasado???


Por último decir que a esa tabla nunca se debería acceder mediante un SELECT (INSER, etc), sino mediante procesos lo mas optimizados posible, estos procesos deberían hacer transparente si la tabla está cortada, en diferentes BD / FilSystem, o como sea.