The redistributed corporate rollup model is similar to the corporate rollup model. Primary fragments distributed at remote sites are rolled up into a consolidated table at a central site. At the site where the fragments are consolidated, however, a Replication Agent processes the consolidated table as if it were primary data. The data is then forwarded to Replication Server for distribution to subscribers.
Figure 1-6 illustrates the flow of data in an application based on the redistributed corporate rollup model:
Figure 1-6: Distributed fragments with redistributed corporate rollup
The consolidated table is described with a replication definition. Other sites can then subscribe to this table. Do not allow applications to update the corporate rollup table directly. All updates should originate from the primary sites.
The tasks associated with creating a redistributed corporate rollup replication system are identical to the corporate rollup model, except that:
A Replication Agent must be activated at the headquarters site for the consolidated database so that all updates are submitted to the Replication Server as if they were made by a client application.
RepAgent must be configured with its send_maint_xacts_to_replicate option set to “true.” Otherwise, the Replication Agent filters will not redistribute replicated data as primary data.
For information about configuring RepAgent, see Chapter 4, “Managing a Replication System.”
A Replication Agent is required for the headquarters Replication Server, since data will be redistributed from that site.
At the headquarters site a replication definition must be created for each table. Other sites can create subscriptions to this replication definition, but the primary sites cannot subscribe to their own primary data.
The headquarters Replication Server must have routes to the other sites that create subscriptions for the consolidated replicate table. If the primary sites create subscriptions, routes must be created to them from headquarters.
Do not allow rollup sites to re-create subscriptions to their primary data. If they do, transactions could loop endlessly through the system.