![]() |
Consulta Firebird lenta?
Qué tal.
Pues eso, tengo una tabla en Firebird con algo más de 3 millones de registros, si hago una consulta esta se tarda de 10 a 14 segundos, con un resultado de 15 registros. Ya he agregado un índice por el campo que utilizo para la consulta, pero todo igual. Esta misma tabla la tengo en Postgres y la misma consulta tarda de 2 a 15 ms. La pregunta: ¿es normal que Firebird tarde tanto? La consulta es: Cita:
Eduardo Laguna |
Tienes forma de ver el plan que genera la consulta, de pronto no usa el indice que le indicas... yo por ejemplo uso una aplicación llamada databaseworcbech para correr consultas y de ahí ver el plan usado por la consulta... también puedes poner la consulta que usas de pronto se puede reorganizar o si usas la clausa "in" tengo entendido que puede ser más lenta que usar un "exists"
|
No, claro que no es normal, debe ser instantáneo.
|
nrp es el que tiene el indice?? prueba creandolo descendente sí es ascendente o ascendente sí es descendente. |
recuerda que el tema de los índices es bien complicado, es decir, puedes tener nrp como índice compuesto, osea, varios campos en un mismo índice, pero si solo vas a buscar por un campo necesitas que el índice esté solamente por ese campo, además también el exceso de índices hace que una consulta sea lenta.
|
Cita:
Ya he creado el índice en donde iba y todo perfecto. Muchas gracias por tomarse el tiempo de contestar, este foro es una luz en la oscuridad. Gracias. Eduardo Laguna |
La franja horaria es GMT +2. Ahora son las 06:26:12. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi