Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

index primario de una tabla

Estas en el tema de index primario de una tabla en el foro de Mysql en Foros del Web. buen dia amigos de foros del web. quiero pedirles una recomendacion a cerca de una duda que tengo tengo esta tabla CREATE TABLE `posts` ( ...
  #1 (permalink)  
Antiguo 23/07/2012, 17:28
 
Fecha de Ingreso: agosto-2010
Ubicación: peru
Mensajes: 115
Antigüedad: 13 años, 8 meses
Puntos: 0
index primario de una tabla

buen dia amigos de foros del web.
quiero pedirles una recomendacion a cerca de una duda que tengo

tengo esta tabla

CREATE TABLE `posts` (
`idenom` varchar(20) NOT NULL,
`titulo` varchar(255) NOT NULL,
`hits` int(11) NOT NULL,
PRIMARY KEY (`idenom`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8;


la cual espesifique la llave primaria es varchar
la pregunta es
¿en grandes cantidades de datos tiende a tener problemas ese index, o esta muy mal poner eso?
por favor ayuda---.
la duda esta que me mata...
  #2 (permalink)  
Antiguo 24/07/2012, 04:42
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: index primario de una tabla

Es mucho mas practico definirlo como integer autoincremental.... se mantiene solo.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #3 (permalink)  
Antiguo 24/07/2012, 07:32
 
Fecha de Ingreso: agosto-2010
Ubicación: peru
Mensajes: 115
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: index primario de una tabla

es que mis datos son de esta manera UU1234_QW
es unico tambien.
¿o tendria que crear un campo mas llamada ide int?
y el campo idenom lo defino como unique
  #4 (permalink)  
Antiguo 24/07/2012, 07:41
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: index primario de una tabla

No es necesario, pero en mi estilo de trabajar yo lo crearia....y si crearia el indice unico sobre la clave alternativa idenom...
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.
  #5 (permalink)  
Antiguo 24/07/2012, 07:44
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: index primario de una tabla

Cita:
¿en grandes cantidades de datos tiende a tener problemas ese index, o esta muy mal poner eso?
Aunque no lo creas,tu pregunta es muy abstracta.
Si está mal o bien, no tiene una relación directa con el campo elegido como clave primaria, sino con el funcionamiento específico del sistema sobre el que se usará. Y no existe una regla absoluta sobre el asunto.
Se suele aconsejar usar numéricos si el impacto de la clave sobre la performance global es mucho, pero eso se da habitualmente en tablas con alto nivel de transacciones diarias (y por alto debe entenderse millones de registros y no miles). Pero cuando la tabla tiene un uso medio o bajo, el usar numericos o alfanuméricos n ogenera un impacto muy perceptible.
Además, ten en cuenta, por ejemplo, que a nivel comercial, en el caso de los supermercados, los identificadores habituales son alfanumericos (códigos de barra), y no por ello son menos eficientes.
En términos generales, mi sugerencia siempre es usar el identificador que más vayas a usar luego en las operaciones. Si usarás constantemente el alfanumérico, más allá de que tenga o no uno numérico, entonces el numérico pasa a ser "dato basura", y su uso es discutible.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 24/07/2012, 08:38
 
Fecha de Ingreso: agosto-2010
Ubicación: peru
Mensajes: 115
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: index primario de una tabla

es que tengo mucho trafico y me esta consumiendo muchos recursos sobre todo el cpu 9.48 (4 cpus)
y estoy preocupado
hay 19 millones de registros y poor eso es la pregunta
  #7 (permalink)  
Antiguo 24/07/2012, 09:42
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: index primario de una tabla

Cita:
Iniciado por czfritz Ver Mensaje
es que tengo mucho trafico y me esta consumiendo muchos recursos sobre todo el cpu 9.48 (4 cpus)
y estoy preocupado
hay 19 millones de registros y poor eso es la pregunta
¿Y estás seguro de que el problema está generado por esa clave?
¿Has analizado con cuidado la performance de las principales consultas?
¿Su sintaxis está optimizada? ¿Has comprobado el uso de los índices, y verificado que no haya más constraints de las necesarias?

Cuando tienes problemas de tráfico, hay que hacer un análisis más detallado. Echarle la responsabilidad a una sola columna de una tabla, por muchos registros que tenga, parece algo exagerado...
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #8 (permalink)  
Antiguo 24/07/2012, 09:59
 
Fecha de Ingreso: agosto-2010
Ubicación: peru
Mensajes: 115
Antigüedad: 13 años, 8 meses
Puntos: 0
Respuesta: index primario de una tabla

muchas gracias fue una exelente ayuda amigos grcias
  #9 (permalink)  
Antiguo 24/07/2012, 10:26
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: index primario de una tabla

__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: index, keywor, primary
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:42.