IP Library › Granted Patent US 11,593,402
Granted Patent B2
US 11,593,402 · App. 16/023,810 · Granted Feb 28, 2023

System and method for enabling multiple parents with weights in a multidimensional database environment

Inventor: Kumar Ramaiyer (Cupertino, CA)
Assignee: ORACLE INTERNATIONAL CORPORATION
G06F16/283G06F16/282G06F16/288G06F16/40
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,593,402
App. No.
16/023,810
Granted
Feb 28, 2023
Kind
B2
Abstract

In accordance with an embodiment, described herein are systems and methods for enabling multiple parents with weights in a multidimensional database. An exemplary system can comprise a computer that includes one or more microprocessors, and a multidimensional database server executing on the computer, wherein the multidimensional database server supports at least one hierarchical structure of data dimensions. A data dimension can comprises a plurality of members, a first set of members being a first level, and a second set of members being at a second level. A member of the second set of members at the second level can comprises two or more member-member relationships with two or more members of the first set of members at the first level. Each of the two or more member-member relationships are associated with a weight.

Claims (66)

1. A method for enabling multiple parents with weights in a multidimensional database, comprising:

providing a multidimensional database server executing on a computer;

providing a hierarchical structure of data dimensions on the multidimensional database server structured as a directed acyclic graph (DAG) comprising a plurality of nodes;

providing, within the hierarchical structure of data dimensions, a plurality of members represented by the plurality of nodes of the DAG;

wherein the plurality of members comprise at least a first set of members being at a first level and representing end products;

wherein the plurality of members comprise at least a second set of members being at a second level and representing options;

wherein the plurality of members comprise at least a third set of members being at a third level and representing components;

wherein one member of the first set of members at the first level comprises two or more first-member-second-member relationships with two or more members of the second set of members at the second level, wherein the two or more members at the second level represent mutually exclusive options used in a total number of end products represented by the one member of the first set of members;

wherein each member of the second set of members at the second level comprises one or more second-member-third-member relationships with one more members of the third set of members at the third level;

associating each of the one or more second-member-third-member relationships with a multiplier of a plurality of multipliers representing a number of components;

associating each of the two or more first-member-second-member relationships with a weight of a plurality of weights, wherein the weights represent fractions of the mutually exclusive options used in the total number of end products represented by the one member of the first set of members;

storing each weight in said DAG as an attribute of metadata of the two or more first-member-second-member relationships; and

storing each multiplier in said DAG as an attribute of metadata of each of the one or more second-member-third-member relationships.

2. The method of claim 1 , further comprising:

associating the member of the first set of members at the first level with a demand value of a plurality of demand values.

3. The method of claim 2 , further comprising:

propagating the demand value of the plurality of demand values associated with the member of the first set of members at the first level along each of the two or more first-member-second-member relationships with the member of the second set of members at the second level.

4. The method of claim 3 , wherein propagating the demand value utilizes the weight associated with each of the two or more first-member-second-member relationships.

5. The method of claim 4 , further comprising:

altering each of the weights of the plurality of weights associated with each of the two or more first-member-second-member relationships based upon an input received from a client tier.

6. The method of claim 5 , further comprising:

updating the propagation of the demand value associated with the member of the first set of members at the first level along each of the two or more first-member-second-member relationships based upon the altered weights associated with each of the two or more first-member-second-member relationships.

7. The method of claim 6 , wherein updating the propagation of the demand value is done in real time based upon the received input from the client tier.

8. A system for enabling multiple parents with weights in a multidimensional database, comprising:

a computer that includes one or more microprocessors; and

a multidimensional database server executing on the computer;

a hierarchical structure of data dimensions on the multidimensional database server structured as a directed acyclic graph (DAG) comprising a plurality of nodes;

wherein the hierarchical structure of data dimensions comprises a plurality of members represented by the plurality of nodes of the DAG;

wherein the plurality of members comprise at least a first set of members being at a first level and representing end products;

wherein the plurality of members comprise at least a second set of members being at a second level and representing options;

wherein the plurality of members comprise at least a third set of members being at a third level and representing components;

wherein one member of the first set of members at the first level comprises two or more first-member-second-member relationships with two or more members of the second set of members at the second level, wherein the two or more members at the second level represent mutually exclusive options used in a total number of end products represented by the one member of the first set of members;

wherein each member of the second set of members at the second level comprises one or more second-member-third-member relationships with one more members of the third set of members at the third level;

associating each of the one or more second-member-third-member relationships with a multiplier of a plurality of multipliers representing a number of components;

associating each of the two or more first-member-second-member relationships with a weight of a plurality of weights, wherein the weights represent fractions of the mutually exclusive options used in the total number of end products represented by the one member of the first set of members;

storing each weight in said DAG as an attribute of metadata of the two or more first-member-second-member relationships; and

storing each multiplier in said DAG as an attribute of metadata of each of the one or more second-member-third-member relationships.

9. The system of claim 8 , wherein the member of the first set of members at the first level is associated with a demand value of a plurality of demand values.

10. The system of claim 9 , wherein the demand value associated with the member of the first set of members at the first level is propagated along each of the two or more first-member-second-member relationships with the member of the second set of members at the second level.

11. The system of claim 10 , wherein propagating the demand value utilizes the weight associated with each of the two or more first-member-second-member relationships.

12. The system of claim 11 , wherein each of the weights of the plurality of weights associated with each of the two or more first-member-second-member relationships is altered based upon an input received from a client tier.

13. The system of claim 12 , wherein the propagation of the demand value associated with the member of the first set of members at the first level along each of the two or more first-member-second-member relationships is updated based upon the altered weights associated with each of the two or more first-member-second-member relationships.

14. The system of claim 13 , wherein updating the propagation of the demand value is done in real time based upon the received input from the client tier.

15. A non-transitory computer readable storage medium having instructions thereon for enabling multiple parents with weights in a multidimensional database, which when read and executed cause a computer to perform steps comprising:

providing a multidimensional database server executing on a computer;

providing a hierarchical structure of data dimensions on the multidimensional database server structured as a directed acyclic graph (DAG) comprising a plurality of nodes;

providing, within the hierarchical structure of data dimensions, a plurality of members represented by the plurality of nodes of the DAG;

wherein the plurality of members comprise at least a first set of members being at a first level and representing end products;

wherein the plurality of members comprise at least a second set of members being at a second level and representing options;

wherein the plurality of members comprise at least a third set of members being at a third level and representing components;

wherein one member of the first set of members at the first level comprises two or more first-member-second-member relationships with two or more members of the second set of members at the second level, wherein the two or more members at the second level represent mutually exclusive options used in a total number of end products represented by the one member of the first set of members;

wherein each member of the second set of members at the second level comprises one or more second-member-third-member relationships with one more members of the third set of members at the third level;

associating each of the one or more second-member-third-member relationships with a multiplier of a plurality of multipliers representing a number of components;

associating each of the two or more first-member-second-member relationships with a weight of a plurality of weights, wherein the weights represent fractions of the mutually exclusive options used in the total number of end products represented by the one member of the first set of members;

storing each weight in said DAG as an attribute of metadata of the two or more first-member-second-member relationships; and

storing each multiplier in said DAG as an attribute of metadata of each of the one or more second-member-third-member relationships.

16. The non-transitory computer readable storage medium of claim 15 , the steps further comprising:

associating the member of the first set of members at the first level with a demand value of a plurality of demand values.

17. The non-transitory computer readable storage medium of claim 16 , the steps further comprising:

propagating the demand value of the plurality of demand values associated with the member of the first set of members at the first level along each of the two or more first-member-second-member relationships with the member of the second set of members at the second level.

18. The non-transitory computer readable storage medium of claim 17 , wherein propagating the demand value utilizes the weight associated with each of the two or more first-member-second-member relationships.

19. The non-transitory computer readable storage medium of claim 18 , the steps further comprising:

altering each of the weights of the plurality of weights associated with each of the two or more first-member-second-member relationships based upon an input received from a client tier.

20. The non-transitory computer readable storage medium of claim 19 , the steps further comprising:

updating the propagation of the demand value associated with the member of the first set of members at the first level along each of the two or more first-member-second-member relationships based upon the altered weights associated with each of the two or more first-member-second-member relationships; and

wherein updating the propagation of the demand value is done in real time based upon the received input from the client tier.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 18, 2018
From: RAMAIYER, KUMAR
To: ORACLE INTERNATIONAL CORPORATION
Reel/Frame 046389/0945 →
Continuity (3)
Provisional Application 62565515 · Sep 29, 2017
Provisional Application 62565512 · Sep 29, 2017
Related Publication 20190102445A1 · Apr 4, 2019
Cited By (1)
US 12,505,125