Advanced Solutions How to : Coordinating transactions for multiple connections in single call
Leyne, Sean asked on Firebird-devel
(You can read in that thread the details about problem requirements and proposed solutions)
Consider a large database (200GB, large tables with 450 Million rows) which is running on a kick-a** server
with pool of enterprise SSDs for storage (more IOPS then Firebird could ever use), which I need to extract
data from on a regular basis throughout the day for use by an external BI system. During the business day,
the database is Live with over 300 connections active with 1 million+ DB transactions.
I need to extract the BI data as a true “snapshot” of data (ensuring FKs are valid), in as short a timeframe as possible.
Because runtime is critical, I want to break the extract process into logical pieces and run each piece is a
separate process/thread (with its own connection) (aka run in parallel).