Intelligent Multidimensional Cube Data Caching

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current OLAP systems experience performance degradation due to frequent queries and complete re-rendering of cube data each time a user interacts, leading to increased burden on the multidimensional database server and poor user experience, especially in network environments.

Innovation Solution

A novel multidimensional data storage (MDDS) cube viewer that separates cube data and presentation data, using intelligent caching and querying to efficiently update and render views by identifying only the necessary data to update, reducing redundant queries and optimizing data retrieval.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If complete re-rendering of cube data is performed each time a user interacts, then the displayed data remains up-to-date, but the system performance degrades and server burden increases

Engineering Contradiction:
Improvedata freshnessVSAvoidsystem performance
Core Design Contradiction:
ReliabilityVSProductivity

Solution Approach 1:

The patent segments the cube data into multiple partitions and implements incremental rendering, where only the modified partition is re-rendered instead of the entire cube. This is achieved by tracking which partitions have changed and selectively updating only those portions, thereby maintaining data freshness while avoiding the performance penalty of complete re-rendering.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs preliminary actions by pre-fetching and caching cube data in the browser before it is actually needed. When user interactions occur, the cached data is already available locally, eliminating the need for immediate server round trips and enabling faster incremental updates without compromising data accuracy.

Inventive Principle:
Principle #10Preliminary action

2Reliability

If frequent queries are sent to the multidimensional database server, then the displayed data remains current, but the server burden increases and user experience deteriorates

Engineering Contradiction:
Improvedata currencyVSAvoiduser experience
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The system performs preliminary data retrieval by fetching and caching cube data in the browser before user interactions occur. This pre-fetching strategy ensures that when users interact with the cube, the data is already available locally, eliminating the need for immediate server queries and reducing both server burden and user waiting time.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent implements a local copy mechanism where cube data is copied from the server to the browser's local cache. This local copy is then used for incremental updates and user interactions, reducing the frequency of server queries while maintaining data currency. The system intelligently determines when to refresh the local copy based on partition modification tracking.

Inventive Principle:
Principle #26Copying

3Reliability

If the same cube data is downloaded repeatedly for each user action, then the data is always fresh, but network bandwidth is wasted and performance suffers

Engineering Contradiction:
Improvedata freshnessVSAvoidnetwork bandwidth
Core Design Contradiction:
ReliabilityVSLoss of energy

Solution Approach 1:

The system performs preliminary data downloading by fetching cube data in advance and storing it in the browser's local cache. This pre-fetching eliminates the need for repeated downloads of the same data, conserving network bandwidth while ensuring data is available for immediate use during user interactions.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The patent creates local copies of cube data in the browser, eliminating the need for repeated server downloads. The system tracks which partitions have been modified and only refreshes those specific partitions when necessary, rather than downloading complete cube data repeatedly. This selective copying strategy maintains data freshness while minimizing network bandwidth consumption.

Inventive Principle:
Principle #26Copying

4Reliability

If complete re-rendering is performed each time, then the view is always complete, but the rendering time increases and user experience worsens

Engineering Contradiction:
Improveview completenessVSAvoidrendering time
Core Design Contradiction:
ReliabilityVSLoss of time

Solution Approach 1:

The patent divides the cube view into multiple partitions and implements incremental rendering, where only the modified partition is re-rendered instead of the entire cube. This segmentation approach maintains view completeness for the affected area while dramatically reducing rendering time by avoiding unnecessary re-rendering of unchanged partitions.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

The system performs partial rendering by updating only the necessary portion of the cube view that corresponds to modified data partitions. This partial action approach maintains view completeness for the relevant data while avoiding the excessive time cost of rendering the entire cube, providing a responsive user experience.

Inventive Principle:
Principle #16Partial or excessive action

Data Source

PatentUS8909680B1Intelligent caching of multidimensional cube data
Publication Date: 2014.12.09 CA TECH INC
  • US8909680B1 patent drawing
  • US8909680B1 patent drawing
  • US8909680B1 patent drawing

AI summary

Some embodiments provide a method for rendering a cube view related to a cube stored in a multidimensional data storage. The method identifies a first portion of cube data that is stored in a cube cache and a second portion of the cube data that is not stored in the cube cache. Based on the identifications, the method retrieves the second data portion of the cube data by accessing the cube data storage. The method renders the cube view for display by using the first portion from the cube cache and the second portion retrieved from the multidimensional data storage.