IP Library Granted Patent US 8,161,070
Granted Patent B2
US 8,161,070 · App. 12/167,187 · Granted Apr 17, 2012

Efficient delta handling in star and snowflake schemes

Assignee: SAP 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 8,161,070
App. No.
12/167,187
Granted
Apr 17, 2012
Kind
B2
Abstract

In one aspect there is provided a method for handling deltas being posted to a repository, database, or other Business Information Warehouse (BW). The method includes receiving, at a delta handler, absolute data without an indication of a change between the received absolute data and data posted to a repository including a fact table. Identifiers are created for the received absolute data. The absolute data including the created identifier is written into a temporary table. One or more deltas are determined by performing a join of the temporary table and the fact table of the repository. The deltas correspond to the indication of the change between the received absolute data and the data posted to the repository. The delta handler provides the one or more deltas to be posted to the fact table of the repository. Related systems, apparatus, methods, and/or articles are also described.

Claims (39)

1. A non-transitory computer-readable storage medium containing instructions to configure a processor to perform a method, the method comprising:

receiving at a delta handler of a server system absolute data from a client system, the absolute data including measure data and dimension data and containing no indication of any differences between the absolute data and corresponding data currently stored in one or more fact tables of a repository of the server system;

creating at least one dimension identifier configured to associate at least a portion of the absolute data with one or more dimensions of at least one dimension table of the repository of the server system;

inserting the at least one created dimension identifier into one or more of the at least one dimension table of the repository;

writing the absolute data into a temporary fact table, including replacing the dimension data of the absolute data with the at least one created dimension identifier and one or more other dimension identifiers of the at least one dimension table of the repository;

joining the temporary fact table to at least one of the one or more fact tables of the repository containing the corresponding data to determine one or more deltas, the one or more deltas indicating one or more differences between the absolute data received at the delta handler and the corresponding data currently stored in the repository; and

posting, by the delta handler, the one or more deltas to at least one of one or more fact tables of the repository containing the corresponding data.

2. The non-transitory computer-readable storage medium of claim 1 , wherein receiving further comprises: receiving, as the absolute data, data of a type which can be summed.

3. The non-transitory computer-readable storage medium of claim 1 , wherein receiving further comprises: receiving the absolute data configured as a table.

4. The non-transitory computer-readable storage medium of claim 1 , wherein receiving further comprises: creating the at least one dimension identifier for a dimension value tuple of the absolute data only when the at least one dimension identifier does not already exist in the at least one dimension table of the repository.

5. The non-transitory computer-readable storage medium of claim 1 , wherein the writing further comprises inserting a zero entry into the temporary fact table when the same dimension data of the absolute data corresponds to more than one of the one or more other dimension identifiers of the at least one dimension table of the repository.

6. The non-transitory computer-readable storage medium of claim 1 , wherein the writing further comprises utilizing a collision handler to identify when the same dimension data of the absolute data corresponds to more than one of the one or more other dimension identifiers of the at least one dimension table of the repository and insert a zero entry into the temporary fact table.

7. A computer-implemented method comprising:

receiving at a delta handler of a server system absolute data from a client system, the absolute data including measure data and dimension data and containing no indication of any differences between the absolute data and corresponding data currently stored in one or more fact tables of a repository of the server system;

creating at least one dimension identifier configured to associate at least a portion of the absolute data with one or more dimensions of at least one dimension table of the repository of the server system;

inserting the at least one created dimension identifier into one or more of the at least one dimension table of the repository;

writing the absolute data into a temporary fact table, including replacing the dimension data of the absolute data with the at least one created dimension identifier and one or more other dimension identifiers of the at least one dimension table of the repository;

joining the temporary fact table to at least one of the one or more fact tables of the repository containing the corresponding data to determine one or more deltas, the one or more deltas indicating one or more differences between the absolute data received at the delta handler and the corresponding data currently stored in the repository; and

posting, by the delta handler, the one or more deltas to at least one of one or more fact tables of the repository containing the corresponding data.

8. The computer-implemented method of claim 7 , wherein receiving further comprises: receiving, as the absolute data, data of a type which can be summed.

9. The computer-implemented method of claim 7 , wherein receiving further comprises: receiving the absolute data configured as a table.

10. The computer-implemented method of claim 7 , wherein receiving further comprises: creating the at least one dimension identifier for a dimension value tuple of the absolute data only when the at least one dimension identifier does not already exist in the at least one dimension table of the repository.

11. The computer-implemented method of claim 7 , wherein the writing further comprises inserting a zero entry into the temporary fact table when the same dimension data of the absolute data corresponds to more than one of the one or more other dimension identifiers of the at least one dimension table of the repository.

12. The computer-implemented method of claim 7 , wherein the writing further comprises utilizing a collision handler to identify when the same dimension data of the absolute data corresponds to more than one of the one or more other dimension identifiers of the at least one dimension table of the repository and insert a zero entry into the temporary fact table.

13. A system comprising:

at least one processor; and

at least one memory, wherein the at least one processor and the at least one memory are configured to provide a method comprising:

receiving at a delta handler of a server system absolute data from a client system, the absolute data including measure data and dimension data and containing no indication of any differences between the absolute data and corresponding data currently stored in one or more fact tables of a repository of the server system;

creating at least one dimension identifier configured to associate at least a portion of the absolute data with one or more dimensions of at least one dimension table of the repository of the server system;

inserting the at least one created dimension identifier into one or more of the at least one dimension table of the repository;

writing the absolute data into a temporary fact table, including replacing the dimension data of the absolute data with the at least one created dimension identifier and one or more other dimension identifiers of the at least one dimension table of the repository;

joining the temporary fact table to at least one of the one or more fact tables of the repository containing the corresponding data to determine one or more deltas, the one or more deltas indicating one or more differences between the absolute data received at the delta handler and the corresponding data currently stored in the repository; and

posting, by the delta handler, the one or more deltas to at least one of one or more fact tables of the repository containing the corresponding data.

14. The system of claim 13 , wherein receiving further comprises: receiving, as the absolute data, data of a type which can be summed.

15. The system of claim 13 , wherein receiving further comprises: receiving the absolute data configured as a table.

16. The system of claim 13 , wherein receiving further comprises:

creating the at least one dimension identifier for a dimension value tuple of the absolute data only when the at least one dimension identifier does not already exist in the at least one dimension table of the repository.

17. The system of claim 13 , wherein the writing further comprises inserting a zero entry into the temporary fact table when the same dimension data of the absolute data corresponds to more than one of the one or more other dimension identifiers of the at least one dimension table of the repository.

18. The system of claim 13 , wherein the writing further comprises utilizing a collision handler to identify when the same dimension data of the absolute data corresponds to more than one of the one or more other dimension identifiers of the at least one dimension table of the repository and insert a zero entry into the temporary fact table.

Assignments (2)
CHANGE OF NAME Recorded Aug 26, 2014
From: SAP AG
To: SAP SE
Reel/Frame 033625/0334 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 6, 2008
From: DIPPER, STEFAN
To: SAP AG
Reel/Frame 021352/0701 →
Continuity (1)
Related Publication 20100005114A1 · Jan 7, 2010