System and method for use of a dynamic flow in a multidimensional database environment
AssigneeOracle International Corporation
InventorsNatasha Reichman, Sergei Riaboi, Alexey Roytman, Victor Belyaev, Kumar Ramaiyer
Life of this patent
Estimating the term…
Abstract
In accordance with an embodiment, described herein is a system and method for use of a dynamic flow process (referred to herein in some examples as Query Processing Dynamic Flow (QPDF)) in a multidimensional database computing environment. The dynamic flow process enables hybrid use of, for example, aggregate storage option, block storage option, or other types of storage containers, and provides a common flow to process a received input query in bottom-up mode. The approach can be used to reduce the size of the cube, which provides for efficient calculation of dynamic members.
Claims20
A system for use of a streaming mode dynamic flow in a multidimensional database environment, comprising:
- a computer, including a processor;
- a multidimensional database;
- a storage container;
- and
- a data buffer comprising a plurality of buckets;
- wherein the system executes a dynamic flow process that operates to:
- receiving an input query from a requestor for processing against the multidimensional database;
- expanding the input query to determine calculated data;
- based upon the expanded input query, defining a plurality of calculation units, and determining an order of calculation;
- building an executable flow comprising the defined calculation units connected in an order based on the determined order of calculation;
- executing the executable flow comprising the defined calculation units connected in an order based on the determined order of calculation wherein each defined calculation unit executes and stores each calculated dynamic cell, and then returns all calculated dynamic cells to an output bucket;
- and
- returning a result of the executable flow.
A method for use of a streaming mode dynamic flow in a multidimensional database environment, comprising:
- providing, at a computer including a processor:
- a multidimensional database,
- a storage container, and
- a data buffer comprising a plurality of buckets;
- and
- executing a dynamic flow process, comprising steps of:
- receiving an input query from a requestor for processing against the multidimensional database;
- expanding the input query to determine calculated data;
- based upon the expanded input query, defining a plurality of calculation units, and determining an order of calculation;
- building an executable flow comprising the defined calculation units connected in an order based on the determined order of calculation;
- executing the executable flow comprising the defined calculation units connected in an order based on the determined order of calculation wherein each defined calculation unit executes and stores each calculated dynamic cell, and then returns all calculated dynamic cells to an output bucket;
- and
- returning a result of the executable flow.
A non-transitory computer readable storage medium, including instructions stored thereon for use of a streaming mode dynamic flow in a multidimensional database environment, which when read and executed by one or more computers cause the one or more computers to perform steps comprising:
- providing, at a computer including a processor:
- a multidimensional database,
- a storage container, and
- a data buffer comprising a plurality of buckets;
- and
- executing a dynamic flow process, comprising steps of:
- receiving an input query from a requestor for processing against the multidimensional database;
- expanding the input query to determine calculated data;
- based upon the expanded input query, defining a plurality of calculation units, and determining an order of calculation;
- building an executable flow comprising the defined calculation units connected in an order based on the determined order of calculation;
- executing the executable flow comprising the defined calculation units connected in an order based on the determined order of calculation wherein each defined calculation unit executes and stores each calculated dynamic cell, and then returns all calculated dynamic cells to an output bucket;
- and returning a result of the executable flow.
Dependencies are inferred from the claim text.