Uniqueidentifier Vs Int

26/10/2006 - 16:09 por José Merlo | Informe spam
Grupo:
Quisiera saber cual es el rendimiento al utilizar como primary key un tipo
de dato Uniqueidentifier con respecto al tipo Int.

Gracias, saludos

Juan Pablo

Preguntas similare

Leer las respuestas

#1 Alejandro Mesa
26/10/2006 - 17:43 | Informe spam
José Merlo,

El tipo INT consume 4 bytes y si es BIGINT 8, en cambio uniqueidentifier
consume 16 bytes. Mientras mas grande sea la llave de un indice, menos
valores cabran por cada pagina del indice, esto hace que el indice tenga mas
paginas, por lo que se necesitaran mas operaciones de lectura para recorrer
el indice. Si el indice es clustered (lo cual es por defecto caundo no se
declara lo contrario en una clave primaria) entonces debes recordar que la
llave del indice clustered es usada en todos los indices nonclustered como
identificador de fila para leer la data desde la tabla.

Otra cosa es que estos valores no tienen patron alguno, son dificiles de
recordar, no se puede saber en que secuencia se crearon (cual se creo primero
y cual despues).


AMB

"José Merlo" wrote:

Mostrar la cita
#2 Javier Loria
26/10/2006 - 22:24 | Informe spam
Hola:
Aun cuando no me gustan los UNIQUEIDENTIFIER como llave primaria, en su
favor hay que decir que tienen la ventaja de ser únicos sin importar el
sevidor, lo que los hace atractivos para bases de datos distribuidas.
Saludos,


Javier Loria
Costa Rica-MVP
Solid Quality Learning

"Alejandro Mesa" wrote in message
news:
Mostrar la cita
#3 Alejandro Mesa
27/10/2006 - 14:19 | Informe spam
Javier,

Estoy de acuerdo contigo. Un ejemplo es el uso de este tipo de data en los
procesos de replicacion (o duplicacion como se le suele llamar en Español
(eso creo)) tipo "Merge" o "Transactional". Otra ventaja es que se pueden
generar por codigo, sin tener que recurrir a la funcion T-SQL "newid".

Saludos,

Alejandro Mesa

"Javier Loria" wrote:

Mostrar la cita
Ads by Google
Search Busqueda sugerida