IP Library Granted Patent US 9,852,165
Granted Patent B2
US 9,852,165 · App. 14/877,332 · Granted Dec 26, 2017

Storing and retrieving context senstive data in a management system

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 9,852,165
App. No.
14/877,332
Granted
Dec 26, 2017
Kind
B2
Abstract

A management system may include a reconciliation engine configured to reconcile a first instance of a resource object from a first data provider and a second instance of the resource object from a second data provider to obtain a reconciled resource object, and store the first instance, and second instance, and the reconciled resource object in datasets. The management system may include a context sensitive query engine configured to receive a context-sensitive query including context information identifying a source originally providing context sensitive data associated with a context-sensitive attribute, and retrieve the context sensitive data from one or more of the datasets based on the context information.

Claims (56)

1. A management system for resource reconciliation within a configuration management database, the management system comprising:

at least one processor and

a non-transitory computer-readable storage medium, including instructions executable by the at least one processor, the instructions configured to implement;

a reconciliation engine configured to reconcile a first instance of a resource object and a second instance of the resource object to obtain a reconciled resource object, the first and second instances of the resource object sharing a common attribute, the common attribute of the first instance of the resource object having first provider-specific data, the common attribute of the second instance of the resource object having second provider-specific data;

the reconciliation engine configured to determine whether the common attribute is a context-sensitive attribute, wherein, when the common attribute is determined as the context-sensitive attribute, the reconciliation engine is configured to merge the first and second instances of the resource object according to a unique reconciliation rule such that the reconciled resource object includes both the first provider-specific data and the second provider-specific data; and

the reconciliation engine is configured to store the reconciled resource object in a target data partition of a configuration management database.

2. The management system of claim 1 , wherein the unique reconciliation rule is a reconciliation rule that is different than what is normally applied to a resource object without having the context-sensitive attribute.

3. The management system of claim 1 , wherein, when the common attribute is determined as the context-sensitive attribute, the reconciliation engine is configured to include source identification information within the reconciled resource object, the source identification information identifying a source of the first provider-specific data and a source of the second provider-specific data.

4. The management system of claim 1 , wherein, when the common attribute is not determined as the context-sensitive attribute, the reconciliation engine is configured to merge the first and second instances of the resource object according to a normal reconciliation rule such that the reconciled resource object includes either the first provider-specific data or the second provider-specific data, but not both.

5. The management system of claim 1 , wherein, when the common attribute is determined as the context-sensitive attribute, the reconciliation engine is configured to include default data within the reconciled resource object, the default data being results of a normal reconciliation rule that is applied to the first and second instances of the resource object, the normal reconciliation rule being a reconciliation rule that is applied to a resource object that does not have a context-sensitive attribute.

6. The management system of claim 1 , wherein the reconciliation engine is configured to assign a reconciliation identifier to the reconciled resource object.

7. The management system of claim 1 , further comprising:

a context-sensitive query engine configured to:

receive a query having context information;

query the target data partition in response to the query; and

retrieve either the first provider-specific data or the second provider-specific data from the reconciled resource object based on the context information.

8. The management system of claim 1 , further comprising:

a context-sensitive query engine configured to:

receive a query having context information that identifies a source of provider-specific data;

query the target data partition for the reconciled resource object in response to the query, and obtain a common key from the reconciled resource object;

query a first provider data partition for the first instance of the resource object using the common key when the context information specifies a first data provider, and obtain the first provider-specific data from the first instance of the resource object; and

query a second provider data partition for the second instance of the resource object using the common key when the context information specifies a second data provider, and obtain the second provider-specific data from the second instance of the resource object.

9. A computer-implemented method for resource reconciliation within a configuration management database, the method comprising:

reconciling a first instance of a resource object and a second instance of the resource object to obtain a reconciled resource object, the first and second instances of the resource object sharing a common attribute, the common attribute of the first instance of the resource object having first provider-specific data, the common attribute of the second instance of the resource object having second provider-specific data;

determining whether the common attribute is a context-sensitive attribute;

merging the first and second instances of the resource object according to a unique reconciliation rule when the common attribute is determined as the context-sensitive attribute such that the reconciled resource object includes both the first provider-specific data and the second provider-specific data, the unique reconciliation rule being a reconciliation rule that is different than what is normally applied to a resource object without having the context-sensitive attribute; and

storing the reconciled resource object in a target data partition of a configuration management database.

10. The method of claim 9 , wherein, when the common attribute is determined as the context-sensitive attribute, the reconciled resource object also includes source identification information that identifies a source of the first provider-specific data and a source of the second provider-specific data.

11. The method of claim 9 , further comprising:

merging the first and second instances of the resource object according to a normal reconciliation rule when the common attribute is not determined as the context-sensitive attribute such that the reconciled resource object includes either the first provider-specific data or the second provider-specific data, but not both.

12. The method of claim 9 , wherein, when the common attribute is determined as the context-sensitive attribute, the reconciled resource object also includes default data that includes results of a normal reconciliation rule that is applied to the first and second instances of the resource object, the normal reconciliation rule being a reconciliation rule that is applied to a resource object that does not have a context-sensitive attribute.

13. The method of claim 9 , further comprising:

assigning a reconciliation identifier to the reconciled resource object.

14. The method of claim 9 , further comprising:

receiving a query having context information;

querying the target data partition in response to the query; and

retrieving either the first provider-specific data or the second provider-specific data from the reconciled resource object based on the context information.

15. The method of claim 9 , further comprising:

receiving a query having context information that identifies a source of provider-specific data;

querying the target data partition for the reconciled resource object in response to the query, and obtaining a common key from the reconciled resource object;

querying a first provider data partition for the first instance of the resource object using the common key when the context information specifies a first data provider, and obtaining the first provider-specific data from the first instance of the resource object; and

querying a second provider data partition for the second instance of the resource object using the common key when the context information specifies a second data provider, and obtaining the second provider-specific data from the second instance of the resource object.

16. A management system comprising:

at least one processor;

a non-transitory computer-readable storage medium, including instructions executable by the at least one processor, the instructions configured to implement,

a configuration management database configured to store data in a plurality of data partitions, including a first provider data partition, a second provider data partition, and a target data partition;

a reconciliation engine configured to reconcile a first instance of a resource object from a first data provider and a second instance of the resource object from a second data provider to obtain a reconciled resource object having reconciled data, the first instance and the second instance sharing a common attribute, the common attribute being a context-sensitive attribute, the context-sensitive attribute of the first instance having first provider-specific data specific to the first data provider, the context-sensitive attribute of the second instance having second provider-specific data specific to the second data provider, wherein the reconciliation engine, upon determining that the common attribute is the context-sensitive attribute, is configured to apply a unique reconciliation rule to the first and second instances than what is normally applied to an object without the context-sensitive attribute;

the reconciliation engine configured to store the first instance in the first provider data partition associated with the first data provider, the second instance in the second provider data partition associated with the second data provider, and the reconciled resource object in the target data partition; and

a context-sensitive query engine configured to receive a query, including context information, the context-sensitive query engine configured to query at least one of the data partitions in response to the query, the context-sensitive query engine configured to retrieve either the first provider-specific data or the second provider-specific data from the at least one data partition based on the context information.

17. The management system of claim 16 , wherein the first and second instances of the resource object and the reconciled resource object share a common key,

wherein the context-sensitive query engine is configured to query the target data partition for the reconciled resource object and obtain the common key from the reconciled resource object,

wherein the context-sensitive query engine is configured to query the first provider data partition for the first instance using the common key when the context information specifies the first data provider, and obtain the first provider-specific data associated with the context-sensitive attribute from the first instance, and

wherein the context-sensitive query engine is configured to query the second provider data partition for the second instance using the common key when the context information specifies the second data provider and obtain the second provider-specific data corresponding to the context-sensitive attribute from the second instance.

18. The management system of claim 17 , wherein the common key includes a reconciliation identifier.

19. The management system of claim 16 , wherein the reconciliation engine includes a context-sensitive merging unit configured to merge the first provider-specific data and the second provider-specific data to create the reconciled data for the reconciled resource object, the reconciled data including both the first provider-specific data and the second provider-specific data.

20. The management system of claim 16 , wherein the reconciled data includes the first provider-specific data, the second provider-specific data, and default data corresponding to results of a reconciliation operation on the context-sensitive attribute.

Assignments (14)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 7, 2025
From: BMC SOFTWARE, INC.
To: BMC HELIX, INC.
Reel/Frame 070442/0197 →
GRANT OF FIRST LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0628 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Nov 13, 2024
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: GOLDMAN SACHS BANK USA, AS COLLATERAL AGENT
Reel/Frame 069352/0568 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052854/0139) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0617 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (052844/0646) Recorded Aug 6, 2024
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 068339/0408 →
OMNIBUS ASSIGNMENT OF SECURITY INTERESTS IN PATENT COLLATERAL Recorded Mar 4, 2024
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS RESIGNING COLLATERAL AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR COLLATERAL AGENT
Reel/Frame 066729/0889 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Feb 1, 2024
From: ALTER DOMUS (US) LLC
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.
Reel/Frame 066567/0283 →
GRANT OF SECOND LIEN SECURITY INTEREST IN PATENT RIGHTS Recorded Sep 30, 2021
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: ALTER DOMUS (US) LLC
Reel/Frame 057683/0582 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052844/0646 →
SECURITY INTEREST Recorded Jun 4, 2020
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
Reel/Frame 052854/0139 →
RELEASE OF PATENTS Recorded Oct 5, 2018
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: BMC SOFTWARE, INC.; BLADELOGIC, INC.; BMC ACQUISITION L.L.C.
Reel/Frame 047198/0468 →
SECURITY INTEREST Recorded Oct 2, 2018
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE, AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 047185/0744 →
SECURITY INTEREST Recorded Jul 27, 2017
From: BMC SOFTWARE, INC.; BLADELOGIC, INC.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 043351/0189 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2015
From: MOROZOV, VITALY
To: BMC SOFTWARE, INC.
Reel/Frame 036776/0995 →