IP Library Granted Patent US 7,660,830
Granted Patent B2
US 7,660,830 · App. 09/979,197 · Granted Feb 9, 2010

System for integrating diverse database and maintaining their consistency

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,660,830
App. No.
09/979,197
Granted
Feb 9, 2010
Kind
B2
Abstract

An arrangement maintains consistency among satellite databases and an integrated database that is the union of the satellite databases with a controller that fetches update requests from a queue and applies each fetched request to all of the databases, in sequence, ending with the integrated database. In applying a modification request to a target database, a filter is used that comprises two components. The first component processes the modification request submitted by the queue to a modification request that is appropriate for the schema of the target database and that is based on the data that is already present in the target database. When appropriate, the first component also creates an update request that is sent to the queue, to achieve transitive closure. The second component communicates with the target database, using the API and protocols of the target database.

Claims (38)

1. An arrangement comprising:

a processor;

a plurality of satellite databases communicating with said processor, each storing data; and

a materialized database, under control of said processor, that stores a union of the data stored in all of said satellite databases,

where said processor includes a queue that stores updates in a global database schema that are sent from said satellite databases to said processor, and said processor further includes a controller that retrieves said updates from said queue, sends said updates to one or more of said satellite databases in a corresponding satellite database schema, and applies said updates to said materialized database, in order to maintain consistency among said satellite databases and said materialized database;

where said materialized database also sends updates to said queue;

where said controller retrieves an update from said queue and, sequentially, applies each retrieved update to an outbound filter of each of said satellite databases and to said materialized database, where for each of said outbound filters, said materialized database is a source database and said each of said satellite databases, respectively, is a target database; and

where said controller applies said each update to said materialized database after said each update has been applied to all of said satellite databases.

2. An arrangement comprising:

a processor;

a plurality of satellite databases communicating with said processor, each storing data; and

a materialized database, under control of said processor, that stores a union of the data stored in all of said satellite databases,

where said processor includes a queue that stores updates in a global database schema that are sent from said satellite databases to said processor, and said processor further includes a controller that retrieves said updates from said queue, sends said updates to one or more of said satellite databases in a corresponding satellite database schema, and applies said updates to said materialized database, in order to maintain consistency among said satellite databases and said materialized database;

where said materialized database also sends updates to said queue;

where said controller retrieves an update from said queue and, sequentially, applies each retrieved update to an outbound filter of each of said satellite databases and to said materialized database, where for each of said outbound filters, said materialized database is a source database and said each of said satellite databases, respectively, is a target database;

where said outbound filter comprises a call to a translation module followed by a call to a communication module;

where said translation module converts an update expressed in a schema of said materialized database to an update expressed in a schema of its target database; and

where said translation module employs a file of declarative statements that guide said conversion.

3. The arrangement of claim 2 where said file includes a specification section that specifies source database objects, and target database objects.

4. The arrangement of claim 3 where said file further includes in said specification section key fields used in add-type updates, key fields used in delete-type updates, and key fields used in update-type updates.

5. The arrangement of claim 2 where said file includes a specification section that specifies data validity constraints.

6. The arrangement of claim 5 where said data validity constraints relate to data distribution, or routing.

7. The arrangement of claim 2 where said file includes a specification that directs how to obtain values for objects in the target database from one or more objects in the source database.

8. The arrangement of claim 7 where said specification is comprehensive, providing alternative directions for obtaining value for an object in the target database from objects in the source database.

9. The arrangement of claim 8 where said alternative directions are presented in sequence, and value for an object in the target database is evaluated by evaluating the first directive in said sequence for which values are present to enable evaluating.

10. The arrangement of claim 8 where said directives include a string operation.

11. The arrangement of claim 8 where said directives include a pattern match operation.

12. A method executed in a system with which a controller maintains consistency among satellite databases and a materialized database, where said satellite databases store data and said materialized database stores data that represents the union of data stored in all of said satellite databases, comprising the steps of:

receiving an update request from a satellite database at the controller;

converting said update request to a global database schema;

storing said update request in a queue;

accessing from the queue the update request that is structured in a global schema;

selecting a satellite database as a target database to update;

converting said update request to a converted update request expressed in terms of a schema of said target database, that being a target schema, with the aid of a file of declarative statements that describe at least a part of said global schema and at least a part of said target schema; and

communicating said converted update request by employing an application programming interface that is suitable for said target database;

returning to said step of selecting, to select another satellite database and repeat said steps of converting and communicating;

where said step of returning to said step of selecting selects said materialized database after all of said satellite databases have been selected.

13. The method of claim 12 further comprising a step, executed after said step of returning to said step of selecting selects said materialized database, of returning to said step of accessing, to access another update request from said queue.

Assignments (19)
(SECURITY INTEREST) GRANTOR'S NAME CHANGE Recorded Sep 21, 2023
From: AVAYA INC.
To: AVAYA LLC
Reel/Frame 065019/0231 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 53955/0436) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063705/0023 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 61087/0386) Recorded May 18, 2023
From: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS NOTES COLLATERAL AGENT
To: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063690/0359 →
RELEASE OF SECURITY INTEREST IN PATENTS (REEL/FRAME 045034/0001) Recorded May 18, 2023
From: GOLDMAN SACHS BANK USA., AS COLLATERAL AGENT
To: ZANG, INC. (FORMER NAME OF AVAYA CLOUD INC.); AVAYA INC.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; HYPERQUALITY, INC.; HYPERQUALITY II, LLC; CAAS TECHNOLOGIES, LLC; AVAYA MANAGEMENT L.P.
Reel/Frame 063779/0622 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 4, 2023
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 063542/0662 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded May 3, 2023
From: AVAYA MANAGEMENT L.P.; AVAYA INC.; INTELLISIST, INC.; KNOAHSOFT INC.
To: WILMINGTON SAVINGS FUND SOCIETY, FSB [COLLATERAL AGENT]
Reel/Frame 063742/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS AT REEL 45124/FRAME 0026 Recorded Apr 26, 2023
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: AVAYA HOLDINGS CORP.; AVAYA INC.; AVAYA MANAGEMENT L.P.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
Reel/Frame 063457/0001 →
INTELLECTUAL PROPERTY SECURITY AGREEMENT Recorded Aug 5, 2022
From: AVAYA INC.; INTELLISIST, INC.; AVAYA MANAGEMENT L.P.; AVAYA CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 061087/0386 →
SECURITY INTEREST Recorded Sep 25, 2020
From: AVAYA INC.; AVAYA MANAGEMENT L.P.; INTELLISIST, INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 053955/0436 →
SECURITY INTEREST Recorded Jan 23, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 045124/0026 →
SECURITY INTEREST Recorded Jan 10, 2018
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS LLC; OCTEL COMMUNICATIONS LLC; VPNET TECHNOLOGIES, INC.; ZANG, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 045034/0001 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 012759/0141 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK
To: AVAYA INC. (FORMERLY KNOWN AS AVAYA TECHNOLOGY CORP.)
Reel/Frame 044891/0439 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 025863/0535 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST, NA
To: AVAYA INC.
Reel/Frame 044892/0001 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 041576/0001 Recorded Dec 15, 2017
From: CITIBANK, N.A.
To: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS LLC (FORMERLY KNOWN AS OCTEL COMMUNICATIONS CORPORATION); VPNET TECHNOLOGIES, INC.
Reel/Frame 044893/0531 →
BANKRUPTCY COURT ORDER RELEASING ALL LIENS INCLUDING THE SECURITY INTEREST RECORDED AT REEL/FRAME 030083/0639 Recorded Dec 15, 2017
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
To: AVAYA INC.
Reel/Frame 045012/0666 →
SECURITY INTEREST Recorded Jan 27, 2017
From: AVAYA INC.; AVAYA INTEGRATED CABINET SOLUTIONS INC.; OCTEL COMMUNICATIONS CORPORATION; VPNET TECHNOLOGIES, INC.
To: CITIBANK, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 041576/0001 →
SECURITY AGREEMENT Recorded Mar 13, 2013
From: AVAYA, INC.
To: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., THE
Reel/Frame 030083/0639 →
SECURITY AGREEMENT Recorded Feb 22, 2011
From: AVAYA INC., A DELAWARE CORPORATION
To: BANK OF NEW YORK MELLON TRUST, NA, AS NOTES COLLATERAL AGENT, THE
Reel/Frame 025863/0535 →
CONVERSION FROM CORP TO LLC Recorded May 12, 2009
From: AVAYA TECHNOLOGY CORP.
To: AVAYA TECHNOLOGY LLC
Reel/Frame 022677/0550 →