Hola a todos
queria comentaros un caso que tenemos con los tiempos de acceso a una
determinada tabla y creemos que la solucion pasa por el particionado, pero
no estoy seguro como funciona y que rendimiento habria de esperar
segun tengo entendido, y a grandes rasgos, la mejor solucion seria un
particionado fisico de los datos
"bussines case" :: tabla de ventas, donde las escrituras se producen cada
hora y las lecturas continuamente, siendo los periodos mas consultados (en
orden por numero de consultas) ::
- ultima semana cerrada
- ultimo mes cerrado
- ultimas ventas (ultimos 2 o 3 dias)
- otros periodos
actualemtne tenemos una sola tabla, cuyo resultado son tiempos de espera
bastante largos cuando no bloqueos
primeramente pensamos en una particion logica (diferentes tablas) pero
creemos que la particion fisica seria mas eficiente (ademas de evitar tener
que cambiar el flujo de datos)
asi pensamos en dividir la tabla en las siguientes particiones
una, la mas grande y menor usada para todas las ventas anteriores a
principios de año (muy pocas consultas, y ninguna escritura)
cinco particiones mas en las que se escribirian una semana en cada una, asi
ventas__1 :: semana 1, semana 6, semana 11 ...
ventas__2 :: semana 2, semana 7, semana 12 ...
ventas__3 :: semana 3, semana 8, semana 13...
ventas__4 :: semana 4, semana 9 ...
ventas__5 :: semana 5, semana 10 ...
de esta forma raramente se leeria de la misma tabla en la que se esta
escribiendo, y el aceso a los datos (por ejemplo para ultimo mes cerrado) se
podria acelerar enormemente (aceso paralelo a un volumen de datos mucho
menor)
asi mismo pensamos en ampliar el numero de discos del servidor (actualmente
cuenta con dos para datos) incluyendo cinco dedicados para estos menesteres
(serian discos de no mucha capacidad, pero alta velocidad, con lo cual el
precio tampoco seria unn factor importante)
preguntas ::
es este particionamiento posible ??
habria que borrar y recargar los datos o se puede hacer on-live ??
al final de año, podrian los datos moverse de alguna forma de una particion
(dedicada) a la otra (la grande)
agradeceria por supuesto si me indicais alguna direccion donde podriamos
aprender un poco mas
gracias por adelantado
Leer las respuestas