Subject Re: [firebird-support] Re: External Tables with Indexes
Author Olivier Mascia
Wednesday 03 Sep 2003, 01:07, cgar1136 écrivait :

c> I have an IB6 Database of a few years old, and it's size is so big
c> for it's age.... the reason for that size is that i need to storage
c> information about the end of exercises and movements for each month
c> and that information is so much...
c> So i was thinking about get out that information from the GDB using
c> external tables, then i can reduce the size of GDB and
c> consecuentially the GBK size too and my reports and query's still
c> like today... but the problem is that the query's works but are so
c> slow, because there are not indexes and the joins take a lot of
c> time...
c> What can i do in this case??... the external tables are my best
c> solution, but velocity is the price....

I don't know if the following suggestion might be applicable to your
real case, but you might also consider moving out old historical data to
another database. Your client application would have to access two
databases. SQL statements won't let you run queries across both
databases, but decent client tools will let you run distributed
transactions across both at least. The historical data would be isolated
to a distinct (rarely updated) DB, that would not require as often
backup as the main one (smaller). Yet you would benefit from indexes,
constraints and so among your historical data, but not between your
historical and the current data.

That's not a perfect replacement for your external files idea, but
that's the only way to get indexes on the historical data. There's also
a price which the added complexity to the design of the application
around this double database concept.

Best Regards,
Olivier Mascia