IP Library Granted Patent US 10,769,124
Granted Patent B2
US 10,769,124 · App. 14/840,985 · Granted Sep 8, 2020

Labeling versioned hierarchical data

Inventors: Jan Finis (Munich, DE); Robert Brunel (Heidelberg, DE)
Assignee: SAP SE
G06F16/219G06F16/00G06F16/2246G06F16/2329G06F16/282
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 10,769,124
App. No.
14/840,985
Granted
Sep 8, 2020
Kind
B2
Abstract

A system includes determination of a first interval encoding of a first version of a hierarchy of nodes, determination of a second version of the hierarchy of nodes, determination of a first difference between the first version of the hierarchy of nodes and the second version of the hierarchy of nodes, and determination of a first swap of two translation ranges of the first interval encoding, the first swap representing the first difference.

Claims (53)

1. A computing system comprising:

a memory storing processor-executable program code; and

a processor to execute the processor-executable program code to:

determine a first interval encoding of a first version of a hierarchy of nodes, the hierarchy of nodes comprising hierarchical data in a relational database;

determine a second version of the hierarchy of nodes of the hierarchical data;

determine a first difference between the first version of the hierarchy of nodes and the second version of the hierarchy of nodes;

determine a first swap of two consecutive translation ranges of the first interval encoding, the first swap representing the first difference;

determine a second difference between the first version of the hierarchy of nodes and the second version of the hierarchy of nodes;

determine a second swap of a second two consecutive translation ranges of the first interval encoding, the second swap representing the second difference;

store a record of the first swap representing the first difference and a record of the second swap representing the second difference;

generate a versioned history of the hierarchical data in a relational database based on the stored records of the first swap and the second swap; and

execute a query on the versioned history of the hierarchical data generated based on the stored records of the first swap and the second swap.

2. A computing system according to claim 1 , the first swap comprising a first shift amount of a first one of the two consecutive translation ranges and a second shift amount of a second one of the two consecutive translation ranges.

3. A computing system according to claim 1 , the first swap comprising a first shift amount of a first one of the two consecutive translation ranges and a second shift amount of a second one of the two consecutive translation ranges, and

the second swap comprising a third shift amount of a first one of the second two consecutive translation ranges and a fourth shift amount of a second one of the second two consecutive translation ranges.

4. A computing system according to claim 1 , the processor to further execute the processor-executable program code in order to cause the computing system to:

determine a third version of the hierarchy of nodes of the hierarchical data;

determine a second difference between the second version of the hierarchy of nodes and the third version of the hierarchy of nodes;

determine a second swap of two consecutive translation ranges of the first interval encoding, the second swap representing the second difference.

5. A non-transitory computer-readable medium storing program code, the program code executable by a processor of a computing system to cause the computing system to:

determine a first interval encoding of a first version of a hierarchy of nodes, the hierarchy of nodes comprising hierarchical data in a relational database;

determine a second version of the hierarchy of nodes of the hierarchical data;

determine a first difference between the first version of the hierarchy of nodes and the second version of the hierarchy of nodes;

determine a first swap of two consecutive translation ranges of the first interval encoding, the first swap representing the first difference;

determine a second difference between the first version of the hierarchy of nodes and the second version of the hierarchy of nodes;

determine a second swap of a second two translation ranges of the first interval encoding, the second swap representing the second difference;

store a record of the first swap representing the first difference and a record of the second swap representing the second difference; and

generate a versioned history of the hierarchical data in a relational database based on the stored records of the first swap and the second swap; and

execute a query on the versioned history of the hierarchical data generated based on the stored records of the first swap and the second swap.

6. A medium according to claim 5 , the first swap comprising a first shift amount of a first one of the two consecutive translation ranges and a second shift amount of a second one of the two consecutive translation ranges.

7. A medium according to claim 5 , the first swap comprising a first shift amount of a first one of the two consecutive translation ranges and a second shift amount of a second one of the two consecutive translation ranges, and

the second swap comprising a third shift amount of a first one of the second two consecutive translation ranges and a fourth shift amount of a second one of the second two consecutive translation ranges.

8. A medium according to claim 5 , the program code further executable by a processor of a computing system to cause the computing system to:

determine a third version of the hierarchy of nodes of the hierarchical data;

determine a second difference between the second version of the hierarchy of nodes and the third version of the hierarchy of nodes;

determine a second swap of two consecutive translation ranges of the first interval encoding, the second swap representing the second difference.

9. A computer-implemented method comprising:

determining a first interval encoding of a first version of a hierarchy of nodes, the hierarchy of nodes comprising hierarchical data in a relational database;

determining a second version of the hierarchy of nodes of the hierarchical data;

determining a first difference between the first version of the hierarchy of nodes and the second version of the hierarchy of nodes;

determining a first swap of two consecutive translation ranges of the first interval encoding, the first swap representing the first difference;

determining a second difference between the first version of the hierarchy of nodes and the second version of the hierarchy of nodes;

determining a second swap of a second two consecutive translation ranges of the first interval encoding, the second swap representing the second difference;

storing a record of the first swap representing the first difference and a record of the second swap representing the second difference; and

generating a versioned history of the hierarchical data in a relational database based on the stored records of the first swap and the second swap; and

executing a query on the versioned history of the hierarchical data generated based on the stored records of the first swap and the second swap.

10. A method according to claim 9 , the first swap comprising a first shift amount of a first one of the two consecutive translation ranges and a second shift amount of a second one of the two consecutive translation ranges.

11. A method according to claim 9 , the first swap comprising a first shift amount of a first one of the two consecutive translation ranges and a second shift amount of a second one of the two consecutive translation ranges, and

the second swap comprising a third shift amount of a first one of the second two consecutive translation ranges and a fourth shift amount of a second one of the second two consecutive translation ranges.

12. A method according to claim 9 , further comprising:

determining a third version of the hierarchy of nodes;

determining a second difference between the second version of the hierarchy of nodes and the third version of the hierarchy of nodes of the hierarchical data;

determining a second swap of two consecutive translation ranges of the first interval encoding, the second swap representing the second difference.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 11, 2022
From: FINIS, JAN; BRUNEL, ROBERT
To: SAP AG
Reel/Frame 059236/0740 →
CHANGE OF NAME Recorded Mar 11, 2022
From: SAP AG
To: SAP SE
Reel/Frame 059362/0362 →
Continuity (3)
Continuation 13932514 · Jul 1, 2013
Provisional Application 61725783 · Nov 13, 2012
Related Publication 20150370836A1 · Dec 24, 2015