IP Library Granted Patent US 7,577,687
Granted Patent B2
US 7,577,687 · App. 11/392,681 · Granted Aug 18, 2009

Systems and methods for synchronizing databases

Assignee: UBS AG
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 7,577,687
App. No.
11/392,681
Granted
Aug 18, 2009
Kind
B2
Abstract

Computer-supported method for building and/or synchronising a second database from/with a first database, accesses by work units being carried out at least on the first database from at least one application workstation, to generate, change or delete contents of the database, with at least one first server to guide and maintain the first database, said server being connected to at least one application workstation, at least one second server to guide and maintain the second database, at least one data connection which connects the two servers, a software program component being provided by which, in the case of a transaction which is initiated from one application workstation on the first database, a sister transaction can be called up on the second database and vice versa—in which case, from the point of view of the application workstation, the sister transaction on the side of the second database behaves analogously to its counterpart on the side of the first database.

Claims (66)

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.

2. The network system according to claim 1 , wherein functions, services and data which exist at the first database are made available at the second database by the sister transactions that employ similar source programs that execute the functions and services that exist at the first database such that interfaces of at least one application software program of the at least one application workstation remains substantially unchanged.

3. The network system according to claim 1 , wherein each sister transaction has one or more software program modules stored in memory, which contain processing logic instructions and access the second database via primitives.

4. The network system according to claim 3 , wherein interfaces of each sister transaction correspond to an original transaction at the first database.

5. The network system according to claim 1 , wherein the coexistence controller of the second server invokes the at least one sister transaction, during a functional synchronization wherein the work unit is not revalidated at the second server.

6. The network system according to claim 1 , wherein the encapsulation module is further configured to update the first database in real time to synchronise changed entries of the first database into the second database, wherein the changed entries at the first database are sent to the coexistence controller of the second server, the coexistence controller being further configured to track coexistence element programs and corresponding application program elements.

7. The network system according to claim 1 , wherein the at least one sister transaction is configured to write to the second database by executing corresponding application program elements.

8. The network system according to claim 6 , wherein the coexistence controller of the second server is further configured to prioritise application software programs to be ported in the case of synchronisation in the direction from the first to the second database, such that an accepted work unit of a first type triggers the selection of the database-entry-oriented synchronisation; and an accepted work unit of a second type triggers the selection of the functional synchronisation.

9. The network system according to claim 1 , wherein the encapsulation module is further configured to decompose the accepted work unit into one or more messages that each correspond to an entry at the first database, the messages are entered in the first database, and the messages are sent to the coexistence controller.

10. The network system according to claim 1 ,

wherein the coexistence controller is further configured to:

execute coexistence utility programs for the entering of entries in the second database; and

execute as the adaption program at least one of coexistence elements and coexistence utility programs of application software programs, the coexistence elements and the coexistences utility programs each contain at least one of adaptation rules from the first to the second database and adaptation rules to application software programs at the second database.

11. The network system according to claim 10 ,

wherein the coexistence controller is further configured to forward the work unit to at least one of the sister transactions based on a message identifier.

12. The network system according to claim 1 , the second server further comprising:

a second server processing unit that accesses memory and executes computer executable instructions;

a sister encapsulation module comprising computer executable instructions stored in memory that when executed are configured to:

modify the second database synchronously using database macros, and

send the same database entries to the coexistence controller as are sent to at least one of the coexistence elements and the coexistence utility programs of application software programs.

13. The network system according to claim 11 , wherein the encapsulation module is further configured to decompose the accepted work unit into one or more messages that each correspond to an entry at the first database, the messages are entered in the first database, and the messages are sent to the coexistence controller in the database-entry-oriented synchronisation.

14. The network system according to claim 13 , wherein the encapsulation module program is further configured to test whether it is more efficient, particularly regarding transmission duration and transmission quantity and/or processing cost in the context of the second database, either to send changed entries resulting from the application of the work unit to the first database as individual functions to the second server, or to send the changed entries resulting from the application of the work unit to the first database as individual messages to the coexistence controller.

15. A method for synchronizing a first database and a second database comprising:

accepting, at an encapsulation module of a first server, 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;

updating the first database based on the accepted work unit;

selecting 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

providing, by the encapsulation module a characterization of the updating at the first database to a second server or providing the work unit to the second server in functional synchronization;

entering of entries in the second database corresponding to changed entries and executing an adaption program containing adaption rules in response to receipt of the changed entries at the second server; and

invoking at least one sister transaction in response to receipt of the characterization or the work unit by a coexistence controller of the second server, the sister transaction comprising 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.

16. The method according claim 15 further comprising: decomposing the accepted work unit into one or more messages, each message corresponding to an entry at the first database;

entering the messages in the first database; and

sending the messages to the coexistence controller.

17. The method according to claim 15 , further comprising providing a software program component at the first server that is stored in memory such that in response to the work unit from the at least one application workstation, a sister transaction can be invoked by the coexistence controller at the second database such that from the point of view of the at the least one application workstation, the sister transaction at the second database performs analogously to a corresponding transaction at the first database.

18. The method according to claim 15 further comprising providing functions, services and data at the first database and the second database, wherein the encapsulation module of the first server and the coexistence controller of the second server execute similar source programs to perform the functions and services at the first database and the second database, such that, interfaces at one or more application software programs are substantially unchanged.

19. The method according to claim 18 , wherein each sister transaction has one or more software program modules, which contain processing logic instructions and are configured to access the second database via primitives.

20. The method according to claim 19 , wherein interfaces of each sister transaction at the second server corresponds to an original transaction at the first database.

21. The method according to claim 15 ,

wherein the updating of the first database is performed in real time to synchronise changed entries of the first database with the second database; and

tracking coexistence element programs and corresponding application program elements at the coexistence controller.

22. The method according to claim 15 further comprising;

triggering the selection of the database-entry-oriented synchronisation in response to accepting a work unit of a first type;

triggering the selection of the functional synchronisation in response to accepting a work unit of a second type.

23. The method according to claim 15 , further comprising:

executing by the coexistence controller coexistence utility programs of a coexistence element that enter the changed entries at the first database at the second database; and

executing, as the adaptation program at least one coexistence elements and coexistence utility programs of application software programs, which contain at least one of adaptation rules from the first to the second database and adaptation rules for the application software programs in the second database.

24. The method according to claim 15 further comprising:

accepting a work unit from at least one application workstation at a sister encapsulation module of the second server, the work unit comprising a request to at least one of generate, change or delete contents of the first database;

modifying the second database synchronously using database macros; and

sending the same database entries from the sister encapsulation module to the coexistence controller as are sent to coexistence elements and/or coexistence utility programs of application software programs.

25. The method according to claim 15 , further comprising testing, by the encapsulation module of the first server whether it is more efficient, particularly regarding transmission duration and transmission quantity and/or processing cost in the context of the second database, either to send changed entries resulting from the application of the work unit to the first database as individual functions to the coexistence controller, or to send the changed entries resulting from the application of the work unit to the first database as individual messages to the second server, wherein each of the individual messages coffesponds to a database entry at the first database.

26. A computer readable medium having computer executable instructions for performing the method according to claim 15 .

27. The network system of claim 1 , wherein the first database is a hierarchical database and the second database is relational database or an object-oriented database.

28. The method claim 15 , wherein the first database is a hierarchical database and the second database is relational database or an object-oriented database.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 10, 2017
From: UBS AG
To: UBS BUSINESS SOLUTIONS AG
Reel/Frame 043141/0497 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2006
From: BANK, MARCEL; LOACKER, HANSBEAT
To: UBS AG
Reel/Frame 017702/0642 →
Priority Claims (1)
EP 05007049 · Mar 31, 2005 · regional
Continuity (1)
Related Publication 20060222163A1 · Oct 5, 2006