IP Library Granted Patent US 11,113,261
Granted Patent B2
US 11,113,261 · App. 15/875,353 · Granted Sep 7, 2021

Data locking

Inventors: Richard Pilz (Dresden, DE); Adrian Mocan (Dresden, DE); Katja Pfeifer (Dresden, DE); Tom Spiegler (Dresden, DE)
Assignee: SAP SE
G06F16/2343G06F16/2264G06F16/2365G06F16/2457
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 11,113,261
App. No.
15/875,353
Granted
Sep 7, 2021
Kind
B2
Abstract

A system and method to query, update, and reduce a size of locking data for a dataset including a fixed plurality of dimensions each having a fixed plurality of members comprising index tables for the dimensions and a locks table specifying one of a fixed plurality of lock states for the plurality of members, where the fixed plurality of members each have an associated index.

Claims (33)

1. A computer-implemented method to query a dataset, the method comprising:

receiving, by a processor, a query to be executed against a dataset, the dataset comprising database data tables including a fixed plurality of dimensions each having a fixed plurality of members and a locks table specifying one of a fixed plurality of lock states for the plurality of members, the fixed plurality of members each having an associated index value defined by a database index table for each of the plurality of dimensions, and the query specifying a combination of at least two of the members;

determining, by the processor, the associated index value for each of the members specified in the query based on an index table defined for each dimension;

determining, by the processor and based on a combination of values for the indices associated with the members specified in the query, a lock state specified in the locks table for the combination of the at least two members specified in the query;

generating a query result based on the lock state for the combination of the at least two members specified in the query; and

storing a record of the query result in a memory.

2. The method of claim 1 , wherein the locks table specifies one of a fixed plurality of lock states for the plurality of members in specific combinations of the members.

3. The method of claim 1 , wherein the plurality of lock states for the plurality of members is selected from a group including at least an open state, a locked state, and a restricted state, wherein data having locked state cannot be changed, data have an open state can be changed, and data having a restricted state is limited to being changed by a privileged entity.

4. The method of claim 1 , wherein an absence of an entry for a combination of the at least two of the members in the locks table is an indication the lock state for that specific combination is a default value.

5. The method of claim 4 , wherein the default state is selected from a group including at least an open state, a locked state, and a restricted state, wherein data having a locked state cannot be changed, data have an open state can be changed, and data having a restricted state is limited to being changed by a privileged entity.

6. A computing system to query a dataset, the system comprising:

a storage device a dataset, the dataset comprising database data tables including a fixed plurality of dimensions each having a fixed plurality of members and a locks table specifying one of a fixed plurality of lock states for the plurality of members, the fixed plurality of members each having an associated index value defined by a database index table for each of the plurality of dimensions;

a memory storing processor-executable program code; and

a processor to execute the processor-executable program code in order to cause the computing system to:

receive a query to be executed against the dataset, the query specifying a combination of at least two of the members;

determine the associated index value for each of the members specified in the query based on an index table defined for each dimension;

determine, based on a combination of values for the indices associated with the members specified in the query, a lock state specified in the locks table for the combination of the at least two members specified in the query;

generate a query result based on the lock state for the combination of the at least two members specified in the query; and

store a record of the query result in a memory.

7. The system of claim 6 , wherein the locks table specifies one of a fixed plurality of lock states for the plurality of members in specific combinations of the members.

8. The system of claim 6 , wherein the plurality of lock states for the plurality of members is selected from a group including at least an open state, a locked state, and a restricted state, wherein data having locked state cannot be changed, data have an open state can be changed, and data having a restricted state is limited to being changed by a privileged entity.

9. The system of claim 6 , wherein an absence of an entry for a combination of the at least two of the members in the locks table is an indication the lock state for that specific combination is a default value.

10. The system of claim 9 , wherein the default state is selected from a group including at least an open state, a locked state, and a restricted state, wherein data having a locked state cannot be changed, data have an open state can be changed, and data having a restricted state is limited to being changed by a privileged entity.

11. A non-transitory computer readable medium having executable instructions stored thereon, that when executed by a processor, cause the processor to:

receive a query to be executed against a dataset, the dataset comprising database data tables including a fixed plurality of dimensions each having a fixed plurality of members and a locks table specifying one of a fixed plurality of lock states for the plurality of members, the fixed plurality of members each having an associated index value defined by a database index table for each of the plurality of dimensions, and the query specifying a combination of at least two of the members;

determine the associated index value for each of the members specified in the query based on an index table defined for each dimension;

determine, based on a combination of values for the indices associated with the members specified in the query, a lock state specified in the locks table for the combination of the at least two members specified in the query;

generate a query result based on the lock state for the combination of the at least two members specified in the query; and

store a record of the query result in a memory.

12. The non-transitory medium of claim 11 , wherein the locks table specifies one of a fixed plurality of lock states for the plurality of members in specific combinations of the members.

13. The non-transitory medium of claim 11 , wherein the plurality of lock states for the plurality of members is selected from a group including at least an open state, a locked state, and a restricted state, wherein data having locked state cannot be changed, data have an open state can be changed, and data having a restricted state is limited to being changed by a privileged entity.

14. The non-transitory medium of claim 11 , wherein an absence of an entry for a combination of the at least two of the members in the locks table is an indication the lock state for that specific combination is a default value.

15. The non-transitory medium of claim 14 , wherein the default state is selected from a group including at least an open state, a locked state, and a restricted state, wherein data having a locked state cannot be changed, data have an open state can be changed, and data having a restricted state is limited to being changed by a privileged entity.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 21, 2018
From: PILZ, RICHARD; MOCAN, ADRIAN; PFEIFER, KATJA; SPIEGLER, TOM
To: SAP SE
Reel/Frame 045300/0123 →
Continuity (1)
Related Publication 20190228090A1 · Jul 25, 2019
Cited By (1)
US 12,282,472