Multidimensional Database Sandboxing for What-If Analysis
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing solutions for what-if scenario analyses in multidimensional database environments are inefficient in terms of system performance and memory consumption, particularly when dealing with large baseline data sets, as they require end users to provide customized clients to store different copies of the data, leading to increased disk space usage and data traffic.
Innovation Solution
A system and method that provides server-side sandboxing support in a multidimensional database environment, allowing each sandbox to store changes to the baseline data, with the ability to split queries between the sandbox and baseline data, perform aggregations, and merge results, thereby reducing memory footprints and improving system performance.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If end users provide customized clients to store different copies of baseline data for what-if analyses, then scenario management capability is enabled, but disk space usage and data traffic increase significantly
Solution Approach 1:
The patent extracts only the changes from the baseline data and stores them separately in sandboxes, rather than storing complete copies of the baseline data for each scenario. This allows multiple what-if analyses to be performed while minimizing disk space consumption, as only the differential data is stored in each sandbox.
Solution Approach 2:
The patent implements a nested structure where sandboxes containing change data are embedded within the larger baseline data context. The system nests the sandbox data with baseline data during query processing, allowing complete scenario analysis without storing complete duplicate copies of the baseline data in each sandbox.
2Adaptability or versatility
If end users provide customized clients to store different copies of baseline data for what-if analyses, then scenario management capability is enabled, but system performance deteriorates due to increased data traffic
Solution Approach 1:
The patent extracts only the changes from the baseline data and stores them separately in sandboxes, rather than storing complete copies of the baseline data for each scenario. This allows multiple what-if analyses to be performed while minimizing disk space consumption, as only the differential data is stored in each sandbox.
Solution Approach 2:
The patent segments the data storage into two parts: the baseline data stored once on the server, and the changes stored separately in sandboxes. This segmentation reduces the amount of data that needs to be transmitted over the network, improving system performance by reducing data traffic while maintaining scenario management capabilities.
3Quantity of substance
If sandboxes store only data changes instead of complete baseline data copies, then memory consumption is reduced, but query complexity increases requiring split and merge operations
Solution Approach 1:
The patent segments the data storage into two parts: the baseline data stored once on the server, and the changes stored separately in sandboxes. This segmentation reduces the amount of data that needs to be transmitted over the network, improving system performance by reducing data traffic while maintaining scenario management capabilities.
Solution Approach 2:
The patent introduces a query processing mechanism that acts as an intermediary between the user's query and the stored data. This intermediary automatically performs the split and merge operations: it separates the query into parts that query baseline data and parts that query sandbox changes, then merges the results. This automation reduces the perceived complexity for users while maintaining the efficiency benefits of storing only changes.
Data Source
AI summary
In accordance with an embodiment, described herein is a system and method for providing sandboxing support in a multidimensional database environment. A plurality of sandboxes and a baseline data can be provided in a multidimensional database server, with each sandbox created for a particular “what-if” analysis, and configured to store one or more changes to the baseline data. When a request is received for a report on a particular “what-if” analysis from a client/user, the multidimensional database server can split the request into a first query and the second query, with the first query directed to a sandbox associated with the client/user, and the second query directed to the baseline data. The multidimensional database server can merge results from the first query and the second query, and perform aggregations and calculations on the merged data, before sending the merged data to a client.


