Columnas uniqueidentifier como primary key

06/07/2005 - 22:53 por Oscar Calvo | Informe spam
Hola a todos,
Estoy desarrollando una aplicacion en .Net basandome en un framework (CSLA)
que propone crear los identificadores de cada tabla de tipo
"uniqueidentifier".Esto crees que afectara al rendimiento de alguna manera,
en vez de hacerlo de digamos, la forma tradicional con entreros
autonumericos?

Gracias y un saludo.

Preguntas similare

Leer las respuestas

#1 Maxi
07/07/2005 - 00:27 | Informe spam
Hola, no, para nada, el uniqueidentifier es a mi gustyo una buena manera de
poner las claves de forma interna, jamas las uses para mostrar al usuario


Maxi - Buenos Aires - Argentina
Desarrollador 3 Estrellas

Msn_messager:
mail: Maxi.da[arroba]gmail.com

"Oscar Calvo" escribió en el mensaje
news:
Hola a todos,
Estoy desarrollando una aplicacion en .Net basandome en un framework
(CSLA)
que propone crear los identificadores de cada tabla de tipo
"uniqueidentifier".Esto crees que afectara al rendimiento de alguna
manera,
en vez de hacerlo de digamos, la forma tradicional con entreros
autonumericos?

Gracias y un saludo.


Respuesta Responder a este mensaje
#2 Antonio Soto
07/07/2005 - 09:13 | Informe spam
Hola Oscar

yo que tu analizaría un poco más a fondo el tema. el uso de GUID como PK
tiene muchas ventajas pero ojo a los inconvenientes:

- 16 bytes para el almacenamiento de la columna, mientras que un int
utiliza 4. Ten en cuenta además que necesitarás campos de este tipo en otras
tablas para mantener las relaciones, por lo que empieza a multiplicar.
- Una PK necesita un índice. Ya no me voy a poner transcendental
hablando sobre lo que podría ocurrir con un campo GUID como indice agrupado,
pero es que aunque lo crees no agrupado, ten en cuenta que los GUID son
"aleatorios" no siguen un orden, por lo que la fragmentación en tu índice de
clave primaria será de aupa.

Vamos, que desde el punto de vista de la programación, el trabajo con GUID
da muchas ventajas, sobre todo el poder conocer el valor que insertarás
antes de hacer la inserción, evitas problemas a la hora de hacer
implantaciones, etc. Pero desde el punto de vista del rendimiento, creo que
no hay color.

Saludos


"Oscar Calvo" escribió en el mensaje
news:
Hola a todos,
Estoy desarrollando una aplicacion en .Net basandome en un framework
(CSLA)
que propone crear los identificadores de cada tabla de tipo
"uniqueidentifier".Esto crees que afectara al rendimiento de alguna
manera,
en vez de hacerlo de digamos, la forma tradicional con entreros
autonumericos?

Gracias y un saludo.


Respuesta Responder a este mensaje
#3 Oscar Calvo
07/07/2005 - 21:20 | Informe spam
Vaya,comprendo.No se hasta que punto sera importante esa perdida de
rendimiento, sera cuestion de valorarlo.

Gracias por la ayuda,chicos.Un saludo
email Siga el debate Respuesta Responder a este mensaje
Ads by Google
Help Hacer una preguntaRespuesta Tengo una respuesta
Search Busqueda sugerida