Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Bases de datos > Firebird e Interbase
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 04-11-2004
Avatar de Luisma
Luisma Luisma is offline
Miembro
 
Registrado: may 2004
Ubicación: Donostia
Posts: 12
Poder: 0
Luisma Va por buen camino
Consulta velocidad consultas en Firebird

A ver por donde empiezo??
Bueno, lo primero he buscado en los foros pero no he encontrado nada
por eso planteo mi consulta

El caso es que tengo varios clientes conectados a un servidor con firebird
1.5.1
Esta instalado el Super Server

Todos los equipos tienen XP

Desde estos clientes, ejecuto una consulta (select ...) que aproximadamente tarda unos 3 segundos.
Cuando esta consulta la lanzo simultaneamente o en un intervalo de medio segundo entre equipos desde 2 equipos el tiempo de respuesta en los dos se duplica
Si la lanzo de tres equipos se y triplica y asi sucesivamente.

Pensaba que lo logico era que que uno tardara 3 segundos, el segundo algo mas, el tercero algo mas etc... pero no que se sumaran los tiempos y la respuesta fuera la misma en todos los equipos.

En principio esto me ocurre con varias consultas que he probado

No se si a alguine se le ocurre que puedo estar haciendo mal, como conseguir mayor velocidad, cualquier sugerencia es bienvenida
Responder Con Cita
  #2  
Antiguo 04-11-2004
Avatar de StartKill
StartKill StartKill is offline
Miembro
 
Registrado: ene 2004
Posts: 299
Poder: 21
StartKill Va por buen camino
Cool

Holas,

No he tenido ningun "encuentro cercano del tercer tipo" con firebird, pero la poca experiencia con Interbase 7.1 y Delphi 7.0 me han enseñado que para mis consultas sean optimas/rapidas---> son crear los indices necesarios para dichas consultas.

Por ejemplo
Código SQL [-]
Select * from tabla01 where fcodigo='1020350'

para que esta consulta sea rapida necesitas un indice para el campo fcodigo

En un comienzo no le preste mucho interes a los indices ya que cuando hacia una consulta era veloz, pero cuando migre data...."ya la tabla llena" se notaba lento.

Inclusive (ojo pestaña y ceja), tratar de no hacer consultas como lo viejos tiempos del clipper/foxpro--grillas de toda nuestra data--es el peor "error" que se puede cometer---claro tablas chiquitas si podeis.

No quiero subestimar tu experiencia es solo un indicador para otros que posiblemente esten empezando con este motor de base de datos.

Si este no fuera tu caso, desconozco el error y francamente me gustaria saber la solucion a ello.

Ahora, comentas que la demora empieza a sumarse por cada consulta de cada pc, humm..., pienso que cada pc que ataque al servidor, demoraria de acuerdo al criterio de seleccion, pero si la consulta es la misma en todas las pc no debria demorar ya que el servidor tendria ya resuelto el "select"

Al menos esa es mi humilde opinion, (no se-si lo lei, me lo djieron o lo soñe) no se que opinaran nuestros moderadores

Your friend

StartKill
Lima-Perú

Última edición por StartKill fecha: 04-11-2004 a las 23:58:27. Razón: ?
Responder Con Cita
  #3  
Antiguo 05-11-2004
Avatar de Luisma
Luisma Luisma is offline
Miembro
 
Registrado: may 2004
Ubicación: Donostia
Posts: 12
Poder: 0
Luisma Va por buen camino
Gracias por la respuesta
La verdad es que el tema de los indices, tampoco le habia prestado mucha atencion, pero es lo primero que mire en cuanto me encontre con este tema, y ahora todos los indices necesarios para la consulta estan creados.

seguimos a la espera ;-)
Responder Con Cita
  #4  
Antiguo 05-11-2004
Mick Mick is offline
Miembro
 
Registrado: may 2003
Posts: 405
Poder: 22
Mick Va por buen camino
Es totalmente normal que si una consulta tarda 3 segundos 2 consultas iguales hechas a la vez tarden 6 segundos. El microprocesador tiene una velocidad de proceso fija, no puedes hacer que haga los calculos mas rapido.
Las consultas que haces tienen que ser muy "bestias" para que tarden 3 segundos o no estan definidos los indices adecuados para acelerar la consulta. Los indices hay que definirlos de acuerdo con como sean las queries que se hagan. Hay que analizar cada query que vaya lenta y definir los indices de la forma necesaria para que la sentencia los pueda aprovechar: los campos y el orden de ellos dentro del indice tienen que estar exactamente ajustados a la query, sino no valen de nada.
Si posteases la query e indicases cuantos registros por tabla e indices tienes, etc, quizas se pudiese dar una solucion mas concreta.

Saludos
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro


La franja horaria es GMT +2. Ahora son las 18:24:49.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi