Búsquedas en SQL Server

Tengo un servidor SQL Server con una tabla de aprox. 1 millón de registros a la que tengo que acceder desde VB o VFP. Necesito hacer una búsqueda (como si fuera el Seek de Fox) y luego recorrer la base buscando más coincidencias. Todo esto funciona perfectamente, pero demasiado lento (y no es por el hardware). Probé desde VB y desde VFP y demoran los mismo usando el método Find de ADO, y cuando lo encuentra (después de unos 5 minutos) no puedo saltar al próximo registro (la instrucción no da error, simplemente no hace nada). Conozco bastante de VFP, pero poco de SQL Server y quizás este cometiendo algún error en el servidor. ¿Dónde puede estar problema?. Desde ya muchas gracias.
Daniel.

1 respuesta

Respuesta
1
Antes que nada debes ser consecuente con el volumen de datos con el que te enfrentas. Tengamos claro que una búsqueda en un millón de registros puede ser lenta o rápida, pero nunca instantánea.
La mayoría de las veces que se presentan problemas de rendimiento en búsqueda de datos, la causa debemos buscarla en el diseño de la base de datos en la que intentamos buscar.
¿Hemos construido bien la tabla? ¿Dispone de claves maestras que identifiquen unívocamente los registros? ¿Disponemos de un sistema de relación entre tablas coherente y eficaz?
En segundo lugar debemos prestar atención a la tecnología que empleamos. ¿Es óptima? ¿Se están realizando consultas eficaces? ¿Nos estamos ayudando de claves únicas para identificar registros?
Quizá deberías emplear algún sistema directo de consulta para evaluar los tiempos de respuesta y, si estos no son adecuados, es que algo anda mal en origen.
En fin, yo te recomiendo revisar el diseño de la base de datos. Crear tablas auxiliares que resuman y tipifiquen los millones de registros para que, una vez agrupados por características comunes puedan ser ubicados de una manera más rentable en tiempo.
Bueno.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas