Multidimensional Data Query Optimization via Predicate Abduction
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Relational database management systems (RDBMS) face challenges in efficiently processing queries on multidimensional data due to the inability to understand the inherent structure of multidimensional data, leading to inconsistencies and increased data retrieval, especially when multiple queries with different domains are executed concurrently.
Innovation Solution
The technique of predicate abduction is employed, where predicates on dimensional data are identified and applied to measure data, allowing only relevant data to be fetched, and multidimensional data is stored in buffers for reuse across iterations, reducing the need for repeated data extraction and maintaining consistency across queries.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If multidimensional data is stored in RDBMS with conventional relational storage, then all applications can access the data using SQL, but the RDBMS cannot understand the inherent structure of multidimensional data leading to inefficient query processing and increased data retrieval
Solution Approach 1:
The patent segments multidimensional data into separate dimension tables and measure tables, each optimized for their specific access patterns. Dimension tables store dimensional attributes while measure tables store metric data, allowing the RDBMS to process each segment efficiently according to its relational structure while maintaining overall multidimensional query capability
Solution Approach 2:
The patent introduces an intermediary layer (OLAP views or materialized views) that translates conventional SQL queries into efficient multidimensional data access patterns. This intermediary enables applications to use standard SQL while the system optimizes access by understanding the underlying multidimensional structure through predefined view definitions
2Ease of operation
If the RDBMS retrieves data without understanding multidimensional structure, then data can be accessed using standard SQL, but inconsistent data retrieval occurs when multiple queries with different domains are executed concurrently
Solution Approach 1:
The patent pre-defines OLAP views that encapsulate multidimensional query patterns and domain specifications before execution. These views pre-establish the relationship between dimensions and measures, ensuring that concurrent queries with different domains retrieve consistent data by adhering to pre-defined access patterns rather than ad-hoc retrieval
Solution Approach 2:
The system incorporates feedback mechanisms where the RDBMS learns from query execution patterns and optimizes subsequent data retrieval. By monitoring concurrent query domains and their results, the system adjusts data retrieval strategies to maintain consistency across multiple queries, using the structural understanding of multidimensional data to resolve conflicts
3Ease of manufacture
If conventional relational storage is used for multidimensional data, then data can be stored in standard RDBMS tables, but repeated data extraction is required for each query iteration increasing processing time
Solution Approach 1:
The patent merges dimension data and measure data into integrated OLAP views that combine multiple relational tables into a unified multidimensional structure. This merging allows the system to retrieve pre-joined data in a single operation rather than repeatedly extracting and joining data for each query iteration, significantly reducing processing time while maintaining standard RDBMS storage
Data Source
AI summary
Predicate abduction involves identifying, from a database statement, predicates on attributes of dimensional data, and applying those predicates to corresponding measure data so that only measure values are fetched and returned for dimension values that satisfy the predicate. In contrast to processing joins of relational data, the subset of the measure data is determined without needing to join a fact table with a dimension table and, therefore, without processing every fact record to determine which measure values are associated with records that satisfy the condition. Buffer reuse involves storing in buffers the “domains” of queries executing on multidimensional data. Responsive to detecting that execution of a database statement requires multiple iterations of extracting the same multidimensional data, the data is extracted during the first iteration and stored in a buffer so that, for each subsequent iteration, the buffer-stored data is accessed rather than re-extracting the data.


