Yo usaba las IBTable cuando pase de paradox a firebird y la verdad era muy lento, me toco que emepesar a pasar a querys, aunq al final se me ocurrio algo que me dio buen resultado:
Antes:
Una tabla maestra muy muy muy pesada y varias tablas detalle, como resultado una aplicacion lenta, pesada y cada vez que crecia era peor.
Despues:
Un query con todos los id de la tabla maestra, la tabla Maestra con un filtro el cual es algo como lo siguiente
Código SQL
[-]
id = query.fieldByname('id').asString;
TMaestras.Filter := 'IdAnamnesis = ' + id;
TMaestras.Filtered := True;
TMaestras.Active:=True;
y de ahi en adeltante todo mejoro y segui con mis "queridas" tablas
Nota: lo de queridas tablas es sarcasmo, pero era un proyecto muy grande y muy poco tiempo para cambiar todo por querys de inserts, updates, delte y selects