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

Indices Oracle

Estas en el tema de Indices Oracle en el foro de Oracle en Foros del Web. Buen día, tengo una tabla con una gran cantidad de registros, al realizar una consulta se esta presentando una demora muy alta al mostrarse los ...
  #1 (permalink)  
Antiguo 01/10/2013, 09:38
 
Fecha de Ingreso: abril-2008
Mensajes: 2
Antigüedad: 16 años, 6 meses
Puntos: 0
Indices Oracle

Buen día, tengo una tabla con una gran cantidad de registros, al realizar una consulta se esta presentando una demora muy alta al mostrarse los datos en la aplicación, no puedo hacer modificaciones en la aplicación por lo que pensé en indexar los campos de la tabla, leí un poco acerca de como realizar la indexacion, pero se me presentan dos dudas, la primera de ellas es, si creo el indice en este momento cuando la tabla tiene miles de registros, el indice aplicara a también a todos esos registros existentes? o solo aplicara para los datos que se ingresen desde el momento de la creación del indice. La segunda duda es, al crear el indice es necesario indicar el tablespace o puedo dejarlo sin esa variable. Agradezco su colaboración.
  #2 (permalink)  
Antiguo 01/10/2013, 13:45
 
Fecha de Ingreso: abril-2012
Ubicación: Capital Federal
Mensajes: 283
Antigüedad: 12 años, 7 meses
Puntos: 15
Respuesta: Indices Oracle

Hola yeipro, al crear el indice el mismo te servirá para los datos que presente actualemente tu tabla como los que insertarás a futuro.

El tablespace es independiente de la creación de los indices lo que podrías no asignarle valor ni definirlos.

Cualquier otra duda consulta

No olvides puntuar la respuesta.

Saludos

damimg
  #3 (permalink)  
Antiguo 01/10/2013, 14:02
 
Fecha de Ingreso: abril-2008
Mensajes: 2
Antigüedad: 16 años, 6 meses
Puntos: 0
Respuesta: Indices Oracle

Hola damimg, agradezco tu repuesta, ésta ha resuelto mis dudas. Otra consulta, tal vez tu podrías brindarme algún soporte donde pueda asegurar tu respuesta ?
  #4 (permalink)  
Antiguo 01/10/2013, 17:53
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años
Puntos: 2658
Respuesta: Indices Oracle

El manual de referencia oficial de Oracle, lo mismo que usamos todos cuando surgen dudas...



Y, fundamentalmente, cualquier manual básico sobre BBDD, en el capitulo dedicado a los índices...



En serio, a mi personalmente me asombra la pregunta.
¿Piensas de verdad que se pueda indexar algo (sea o no una tabla), sin indexar lo que ya existe?
La verdad, es la primera vez que alguien plantea una pregunta así.

¿Has trabajado alguna vez en otro DBMS, o es tu primera experiencia en todo sentido?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #5 (permalink)  
Antiguo 02/10/2013, 01:44
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: Indices Oracle

Un añadido.

Aunque no es obligatorio asignar un tablespace, es recomendable ( cosas de buenas prácticas, limpieza y organización ) asignar uno que sea especifico para indices. Lo normal seria tener 1 ó N tablespaces especificos para tablas ( dependiendo del volumen de la tabla ) y 1 ó N tablespaces especificos para indices.

Y como cada maestrillo tiene su librillo, cuando creo algún indice en una tabla que ya tiene datos, yo siempre dejo la coletilla "compute statistics". Al hacer eso tarda mas en crearse, pero a la larga es mas beneficioso. Y tambien recomiendo que si la tabla tiene mucho movimiento de INSERT-DELETE reconstruir regularmente los indices ( Mejor DROP-CREATE que REBUILD ) y si es viable, hacer lo mismo con la tabla ( Dropear los indices, hacer un MOVE de la tabla a un Tablespace "dummy", hacer el MOVE a su tablespace original y crear los indices )
  #6 (permalink)  
Antiguo 02/10/2013, 03: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: 17 años
Puntos: 2658
Respuesta: Indices Oracle



¡Eso sí es tener claro lo que es administrar una base!

__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #7 (permalink)  
Antiguo 02/10/2013, 07:54
Avatar de huesos52
Colaborador
 
Fecha de Ingreso: febrero-2009
Ubicación: Manizales - Colombia
Mensajes: 5.980
Antigüedad: 15 años, 9 meses
Puntos: 360
Respuesta: Indices Oracle

Otra buena practica para una base de datos muy transaccional, ademas de tener tablespaces separados para indices y para tablas, es que estas se encuentren en discos separados.

Muchas veces, el cuello de botella puede ser la controladora del disco.
__________________
Without data, You are another person with an opinion.
W. Edwads Deming
  #8 (permalink)  
Antiguo 02/10/2013, 11:32
 
Fecha de Ingreso: junio-2007
Mensajes: 891
Antigüedad: 17 años, 5 meses
Puntos: 43
Respuesta: Indices Oracle

Cita:
Iniciado por huesos52 Ver Mensaje
otra buena practica para una base de datos muy transaccional, ademas de tener tablespaces separados para indices y para tablas, es que estas se encuentren en discos separados.

Muchas veces, el cuello de botella puede ser la controladora del disco.

Etiquetas: indexacion, indices
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 10:34.