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

Acelerar consultas en SQL Server

Estas en el tema de Acelerar consultas en SQL Server en el foro de SQL Server en Foros del Web. Buenas a todos y gracias de antemano a los que podáis ayudarme Tengo una base de datos en SQL Server 2000 y cuando realizo consultas ...
  #1 (permalink)  
Antiguo 09/11/2008, 11:36
 
Fecha de Ingreso: enero-2008
Mensajes: 6
Antigüedad: 16 años, 3 meses
Puntos: 0
Acelerar consultas en SQL Server

Buenas a todos y gracias de antemano a los que podáis ayudarme

Tengo una base de datos en SQL Server 2000 y cuando realizo consultas del tipo:
"select * from ciudades where idioma= spanish" (es un ejemplo)
me tarda muchísimo en devolver los resultados (1min y medio)

Hay alguna manera de acelerar este tipo de consultas? Un amigo me dijo algo de parametrización pero no tengo ni idea de qué es y si sirve.

PD: la tabla ciudades tiene sus Primary Key con sus respectivos indices

Saludos
  #2 (permalink)  
Antiguo 10/11/2008, 09:34
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Respuesta: Acelerar consultas en SQL Server

Que tal Laura.

Del ejemplo que nos pones, las consultas que más se tardan son las del tipo "Select *".
Define sólo los campos que necesitas y dinos más o menos de que tamaño es tu tabla (# registros). Y aunque tengas defindos indices quizá no lo estas haciendo de la mejor manera, porque no nos pláticas más de un caso en especifico que tengas.

Saludos.
  #3 (permalink)  
Antiguo 10/11/2008, 09:42
 
Fecha de Ingreso: enero-2008
Mensajes: 6
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Acelerar consultas en SQL Server

hola daniel muy bien gracias ;)

el "*" de la consulta son como 6 campos y aun poniendo uno solo me tarda muchísimo, así que descarto que esté ahí el problema.
La tabla ciudades tiene creo que 3 millones de registros.
Si necesitas más info me dices, muchas gracias

Saludos
  #4 (permalink)  
Antiguo 10/11/2008, 10:14
Avatar de flaviovich  
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 2.951
Antigüedad: 18 años, 8 meses
Puntos: 39
Respuesta: Acelerar consultas en SQL Server

Usas nolock al momento de ejecutar la consulta?
__________________
No repitamos temas, usemos el Motor de busquedas
Plantea bien tu problema: Ayúdanos a ayudarte.
  #5 (permalink)  
Antiguo 10/11/2008, 12:10
 
Fecha de Ingreso: enero-2008
Mensajes: 6
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Acelerar consultas en SQL Server

no, no tenia ni idea de su existencia, ahora mismo me informo del tal nolock

PD: si alguien pudiese mostrarme de forma fácil su uso lo agradeceria

Saludos!
  #6 (permalink)  
Antiguo 10/11/2008, 13:17
 
Fecha de Ingreso: noviembre-2006
Ubicación: México
Mensajes: 866
Antigüedad: 17 años, 5 meses
Puntos: 8
Respuesta: Acelerar consultas en SQL Server

3M, no son muchos.

Pudieras por favor poner la estrucutra completa de la tabla y la consulta que dices que se tarda, así como los indices que tienes generados sobre la tabla y su PK.

Saludos
  #7 (permalink)  
Antiguo 10/11/2008, 15:54
 
Fecha de Ingreso: enero-2008
Mensajes: 6
Antigüedad: 16 años, 3 meses
Puntos: 0
Respuesta: Acelerar consultas en SQL Server

mañana o pasado os pongo la estructura de la tabla y lo que me pide daniel00, es que la bbdd la tiene un amigo.

Muchas gracias por vuestra atencion
  #8 (permalink)  
Antiguo 10/11/2008, 17:59
 
Fecha de Ingreso: noviembre-2008
Mensajes: 3
Antigüedad: 15 años, 5 meses
Puntos: 0
Respuesta: Acelerar consultas en SQL Server

el problema pasa claramente por la forma de entrar a la tabla. Conoces lo que es el query plan?
Fijate en tu version de sql instalada y verifica el query plan. es un plan detallado de la ejecución de los query, pero seguramente en esa tabla estás haciendo un full scan, porque 3M de registros no son pocos, pero tampoco muchos.
Seguramente no tenes un indice creado por los campos que usas como filtro.
Posiblemente necesites crear algún indice a la tabla, pero ojo, a no abusar de estos, solo hay que crear los necesarios, sino ganas por un lado, pero perderás por otro.
Saludos.
  #9 (permalink)  
Antiguo 10/11/2008, 18:41
Avatar de usuariobaneado  
Fecha de Ingreso: diciembre-2007
Mensajes: 402
Antigüedad: 16 años, 4 meses
Puntos: 5
Respuesta: Acelerar consultas en SQL Server

Claro, habría que analizar el plan de ejecución y analizar por donde se hace lenta la consulta. El filtro lo está haciendo por texto, toca analizar ese filtro, además evitar los table scan e index scan.

Esto es todo un arte
__________________
Yo quiero ser el pelucón del barrio
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

SíEste tema le ha gustado a 1 personas




La zona horaria es GMT -6. Ahora son las 14:40.