US 7,577,687 B2
Systems and methods for synchronizing databases
Marcel Bank, Oberrohrdorf (Switzerland); and Hansbeat Loacker, Egg (Switzerland)
Assigned to UBS AG, Zurich (Switzerland)
Filed on Mar. 30, 2006, as Appl. No. 11/392,681.
Claims priority of application No. 05007049 (EP), filed on Mar. 31, 2005.
Prior Publication US 2006/0222163 A1, Oct. 05, 2006
Int. Cl. G06F 17/30 (2006.01)
U.S. Cl. 707—203  [707/202; 707/204; 370/241; 370/503; 709/208; 709/227; 709/248; 379/221.08] 28 Claims
OG exemplary drawing
 
1. A network system for synchronizing a first database and a second database comprising:
a first server comprising:
a processing unit configured to access memory and execute computer executable instructions;
an encapsulation module stored in memory comprising computer executable instruction configured to:
accept a work unit from at least one application workstation, the work unit comprising a request to at least one of generate, change or delete contents of the first database;
update the first database based on the accepted work unit; and
select between database-entry-oriented synchronization and functional synchronization,
wherein in database-entry-oriented synchronization, the encapsulation module is configured to transmit changed entries at the first database to a coexistence controller, and
wherein in functional synchronization the encapsulation module is configured to provide a characterization of the update at the first database to a second server or provide the work unit to the second server;
the second server comprising:
the coexistence controller configured to:
in response to receipt of the changed entries, enter entries in the second database corresponding to the changed entries and execute an adaption program containing adaptation rules; and
invoke at least one sister transaction in response to receipt of the characterization or the work unit, each sister transaction comprises computer executable instructions that when executed are configured to operate in a manner analogously at the second database as a corresponding transaction at the first database to synchronise the second database with the first database, the first and second databases being different database types.