IP Library Granted Patent US 11,704,339
Granted Patent B2
US 11,704,339 · App. 17/670,322 · Granted Jul 18, 2023

Systems and methods for improving computational speed of planning by tracking dependencies in hypercubes

Inventors: Ngoc Nguyen (Cupertino, CA); Darren Kermit Lee (Sunnyvale, CA); Shuyuan Chen (Palo Alto, CA); Ritu Jain (Fremont, CA); Francis Wang (Foster City, CA)
Assignee: Workday, Inc.
G06F16/283G06F9/3838G06F12/0891G06F16/2264G06F16/248
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,704,339
App. No.
17/670,322
Granted
Jul 18, 2023
Kind
B2
Abstract

A system for updating a hypercube includes an interface and a processor. The interface is configured to receive an indication to update a cell of the hypercube. The processor is configured to determine a primary dimension value associated with the cell; determine a group of dependencies based at least in part on the primary dimension value, wherein a dependency of the group of dependencies comprises one or more primary dimension values and a pattern; for the dependency of the group of dependencies, determine a set of source locations based at least in part on the one or more primary dimension values and the pattern; and mark the set of source locations as invalid.

Claims (30)

1. A system, comprising:

an interface configured to:

receive formula information comprising structural formulas and version-specific formulas;

a processor configured to:

determine a set of structural dependencies based on the structural formulas, wherein each structural dependency of the set of structural dependencies comprises one or more primary dimension values and is applicable across all versions;

store a plurality of alternative data structures each corresponding to a version, wherein the version is stored in a specific version data structure of the plurality of alternative data structures; and

determine a set of version-specific dependencies based on the version-specific formulas, wherein each version-specific dependency of the set of version-specific dependencies associated with a specific version comprises a set of primary dimension values and is applicable only in the specific version.

2. The system of claim 1 , wherein the interface is further configured to receive version information.

3. The system of claim 1 , wherein the specific version of the data structure includes the set of structural dependencies based on the structural formulas.

4. The system of claim 1 , wherein the specific version of the data structure includes the set of version-specific dependencies based on the version-specific formulas.

5. The system of claim 1 , wherein the interface is further configured to receive an indication to update a cell of the specific version data structure.

6. The system of claim 5 , wherein a union of the set of structural dependencies and the set of version specific dependencies is determined.

7. The system of claim 6 , wherein the union of the set of structural dependencies and the set of version specific dependencies is determined by recursively finding dependent cells of the dependent cells using the set of structural dependencies and the set of version specific dependencies starting from a first cell indicated to be updated.

8. The system of claim 6 , wherein an updated cell is determined based on the union of the set of structural dependencies and the set of version specific dependencies as applied to the cell of the specific version data structure.

9. The system of claim 6 , wherein an invalid marked cell is determined based on the union of the set of structural dependencies and the set of version specific dependencies as applied to the cell of the specific version data structure.

10. The system of claim 9 , wherein the interface is configured to receive an indication to read a particular cell of the specific version data structure.

11. The system of claim 10 , wherein the processor is further configured to determine whether the particular cell has a valid value.

12. The system of claim 11 , wherein in response to determining that the particular cell has the valid value, the processor is configured to provide the valid value.

13. The system of claim 11 , wherein in response to determining that the particular cell does not have the valid value, the processor is configured to recalculate a value for the particular cell.

14. The system of claim 13 , wherein recalculating the value for the particular cell includes determining a recalculated value for an other cell marked as invalid that is required for recalculating the value for the particular cell, marking the other cell a valid after determining the recalculated value, and providing the recalculated value.

15. A method, comprising:

receiving formula information comprising structural formulas and version-specific formulas;

determining, using a processor, a set of structural dependencies based on the structural formulas, wherein each structural dependency of the set of structural dependencies comprises one or more primary dimension values and is applicable across all versions;

storing a plurality of alternative data structures each corresponding to a version, wherein the version is stored in a specific version data structure of the plurality of alternative data structures; and

determining a set of version-specific dependencies based on the version-specific formulas, wherein each version-specific dependency of the set of version-specific dependencies associated with a specific version comprises a set of primary dimension values and is applicable only in the specific version.

16. A computer program product, the computer program product being embodied in a non-transitory computer readable storage medium and comprising computer instructions for:

receiving formula information comprising structural formulas and version-specific formulas;

determining, using a processor, a set of structural dependencies based on the structural formulas, wherein each structural dependency of the set of structural dependencies comprises one or more primary dimension values and is applicable across all versions;

storing a plurality of alternative data structures each corresponding to a version, wherein the version is stored in a specific version data structure of the plurality of alternative data structures; and

determining a set of version-specific dependencies based on the version-specific formulas, wherein each version-specific dependency of the set of version-specific dependencies associated with a specific version comprises a set of primary dimension values and is applicable only in the specific version.

Continuity (3)
Continuation 16397600 · Apr 29, 2019
Provisional Application 62664429 · Apr 30, 2018
Related Publication 20220164369A1 · May 26, 2022