Hola, aqui seguimos preocupados por el rendimiento del sistema.
Os pongo en situación. En mi empresa habiamos desarrollado un sistema en C#
y Oracle, pero cuando todo estaba listo para producción se decidio cambiar a
SQL-SERVER por temas de coste. Asi que nos pusimos manos a la obra y se
cambio todo el código , se migraron los datos ,la estructura y los
procedimientos de Oracle a SQL_SERVER.
Para realizar esta migración me documente un poco, y consegui de internet
unos cuantos documentos sobre como hacer esta migración. Al pasar las
Primary key a SQL-SERVER se convirtieron en Cluster index. El problema que
tengo ahora es el siguiente:
Tengo unas 5 o 6 tablas con unos 12-13 millones de registros, estas tablas
(bueno en realidad todas las tablas ), tiene como clave primaria un GUID
representado como un Varchar(36). Ademas en estas tablas se realizan
continuamente inserciones y querys, y como os podeis imaginar ordenar los
datos por este guid no tiene ningun beneficio. Sin embargo creo que se
penalizan mucho las inserciones por aquello de la reorganización del árbol
B.
En esta situación me estoy planteando muy seriamente eliminar todos los
Cluster index y crear las claves primarias como indices únicos normales y
corrientes,
y SOLO crear Cluster index en las tablas y en los campos en los que tener
una ordenación física de la tabla me reporte algun benecifio.
¿Es una locura eliminar todos los cluster index?, ¿Me penalizaran los joins,
(aun cuando existan pk )?.
Muchas gracias por vuestras respuestas.
www.metasincro.es
Leer las respuestas