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

Velocidad SQL

Estas en el tema de Velocidad SQL en el foro de SQL Server en Foros del Web. Hola que tal: tengo el siguiente detalle, estoy desarrollando con .net y sql server 2000, el asunto es que tengo un tabla con aproximadamente 200,000 ...
  #1 (permalink)  
Antiguo 08/04/2008, 10:33
 
Fecha de Ingreso: abril-2008
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Pregunta Velocidad SQL

Hola que tal:
tengo el siguiente detalle, estoy desarrollando con .net y sql server 2000, el asunto es que tengo un tabla con aproximadamente 200,000 registros, el problema es que en algunos clientes traerme esta cantidad de registros desde el servidor es muy lento, pero de otros clientes si es muy rapido, por ejemplo, desde un maquina de me tarda 3 segundos en traerme esta cantidad de registros, pero desde otra maquina me tarda hasta 20 segundos, (las caracteristicas de las maquinas son iguales, mismo procesador, misma memoria ram, todo igual).
Tienen alguna idea de cual sea el problema, quiza sea alguna configuracion de mi cliente de SQL?

Gracias por su pronta ayuda...
  #2 (permalink)  
Antiguo 08/04/2008, 11:55
Avatar de iislas
Colaborador
 
Fecha de Ingreso: julio-2007
Ubicación: Mexico, D.F.
Mensajes: 6.482
Antigüedad: 16 años, 9 meses
Puntos: 180
Re: Velocidad SQL

Primero, no veo la necesidad de colocar 200,000 registros en el cliente.
Segundo, la velocidad de respuesta de una base de datos puede estar supeditada a varios factores, tanto de red como de indices, mentenimiento, buenas practicas de programacion y mantenimiento.
  #3 (permalink)  
Antiguo 09/04/2008, 09:18
 
Fecha de Ingreso: abril-2008
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Re: Velocidad SQL

Bueno mira el que se necesidad o no, eso no me tiene preocupado, el asunto es que porque algunas maquinas se tardan, mas de lo debido, en traerse la misma informacion que otras maquinas... quiza no me explique bien...
Es un sistema, que usa directamente los motores de SQL para obtener informacion por lo cual esto lo hace muy rapido... la base de datos esta en un servidor al cual 2 maquinas accesan a el con el mismo sistema, las maquinas como mencione tienen exactamente las mismas caracteristicas, pero una en el ejemplo que te puse, se tarda 3 segundos en traerse 200,000 registro, y la otra 20 segundos, es decir hay mucha diferencia... yo creo que por ahi el cliente de SQL de una de mis maquinas esta mal configurado y por esa razon se tarda mas en traerse la informacion... ahora como me mencionas que quiza por el trafico de red, esto no puede ser ya que son unicamente las 2 maquinas conectas a la red y por ende al servidor, lo otro que mencionas de indices tampoco puede ser ya que estan usando la misma base de datos, Mantenimento creo que tampoco son nuevas recien instaladas, la base de datos es nueva apenas tiene 3 tablas,; buenas practicas de programacion creo que tampoco ya que no creo que haya otro sistema mas rapido en traerse la informacion, como te menciono uso directamente los motores de SQL...
asi que aun sigo con esa incognita?
saludos....
  #4 (permalink)  
Antiguo 09/04/2008, 09:27
 
Fecha de Ingreso: abril-2008
Mensajes: 3
Antigüedad: 16 años
Puntos: 0
Re: Velocidad SQL

Es una aplicacion WEB o de Escritorio; si es una aplicacion de escritorio
deberias ver que la conecion no sea via ODBC y en todo caso actualizar la ultima version del MDACTYP; podria ayudar
  #5 (permalink)  
Antiguo 09/04/2008, 09:49
 
Fecha de Ingreso: abril-2008
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Re: Velocidad SQL

es una aplicacion de escritorio, pero igualmente se hizo la prueba con una web y pasa exactamente lo mismo en una tarda muy poco y la otra demasiado...
ya verifique lo de MDAC y tengo la misma version en las 2 maquinas...alguna otra idea?
  #6 (permalink)  
Antiguo 14/04/2008, 10:33
 
Fecha de Ingreso: abril-2008
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Re: Velocidad SQL

sabes ya verique lo del MDAC y todo esta igual en una y otra maquina... ya no se que hacer, ya que la diferencia es mucha 20 seg en una y en la otra 3 0 2 segundos...porque?? jejeje
alguna otra idea?
saludos
  #7 (permalink)  
Antiguo 16/04/2008, 00:54
 
Fecha de Ingreso: julio-2007
Mensajes: 23
Antigüedad: 16 años, 9 meses
Puntos: 0
Re: Velocidad SQL

¿Pues las querys de acceso como son?
Si es a través de Web utilizará cacheo y por eso es más rápido.

Danos más pistas sobre la arquitectura y como está montado... vamos más detalles.
  #8 (permalink)  
Antiguo 16/04/2008, 20:27
 
Fecha de Ingreso: abril-2008
Mensajes: 25
Antigüedad: 16 años
Puntos: 0
Re: Velocidad SQL

Hola,

Da mas detalles, estan en el mismo segmento de red?, el cable de red es identico y as tarjetas]?que programas se estan ejecutando en cada maquina?
  #9 (permalink)  
Antiguo 17/04/2008, 12:54
 
Fecha de Ingreso: abril-2008
Mensajes: 6
Antigüedad: 16 años
Puntos: 0
Re: Velocidad SQL

ok, ahi van los detalles:
tengo un servidor con SQL server 2000, y tengo 2 maquinas como clientes y eso es todo, esa es toda mi red, estoy con autentificacion de windows (domio y todo eso), entonces estamos desarrollando un sistema con .net (windows application), este sistema se ejecuta en los clientes y por supuesto va al servidor para accesar a la base de datos, les pongo un ejemplo de como ejecuto un sql bajo el sistema:
SqlConnection conn = new SqlConnection(Data Source =Servidor; Initial Catalog=BaseDatos; Integrated Secutiry=True");
SqlCommand command = new SqlCommand("SELECT CAT_TRA_CODIGO, CAT_TRA_CLAVE, CAT_TRA_DESC, CAT_TRA_NOMBRE, CAT_TRA_TIPO, CAT_TRA_PAISES, CAT_TRA_ANALISISHTSMEX " +
"FROM TRATADO ", conn);
SqlDataAdapter dataAdapter = new SqlDataAdapter(command);
DataSet dataSet = new DataSet();
conn.Open();
command.Prepare();
dataAdapter.Fill(dataSet, "Tratados");
conn.Close();
Y ya esto me retorna mi DataTable el cual lo asigno a un DataGridView.DataSource = dataTable;

Bueno pues uno de las maquinas se tarda 3 segundos en desplegar la informacion en el DataGridView y la otra maquina se tarda entre 20 y 25 segundos es mucha la diferencia no creen?
Ahora en cuestion de hardware el cliente que se tarda 3 seg. es mas lento que la maquina que se tarda 20 o mas segundos. Por lo que pienso que velocidad de maquina no es.
Diganme si requieren de algun otro detalle?
Ah!! otro detalle que se me pasaba es que instale el sistema directamente en el servidor y tambien fue lento, siendo que el servidor es de los mas nuevos y rapidos, entonces yo creo que es algo en la configuracion del cliente.
Tambien meti una maquina mas a la red, y tambien se tardo mucho tiempo, pero a esta maquina se me ocurrio instalarle de manera local el SQL 2005 (SQLEXPRESS) y desde ese momento la maquina ya pudo traerse del servidor la informacion en 3 segundos.
alguna idea?
Gracias!!
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 11:35.