Hey Robert -
When data is extracted, it is extracted as "a big flat table" - querying it is more efficient that way.
We also don't store that stuff in Firebird - we built/use a completely different in-memory technology for Extracts. Firebird is still used a little bit in the product, though - mostly for geocoding work.
(Very) generally, you'll find that the fewer joins you need to traverse in your database, the faster it can return results to you. So, OLTP/Snowflakes often give you the worse performance, stars give you pretty good perf, and highly de-normalized gives you the best.
Hope this helps!