Query Engine Hierarchical Aggregation for Granular Data Fabrics
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Traditional query engines face limitations such as restricted aggregation capabilities, and challenges with handling granular data structures and hierarchical dependencies, and challenges with existing workarounds, such as cumbersome and unintuitive, and challenges with handling granular data structures and hierarchical dependencies, resulting in restricted flexibility, inaccurate aggregations, and inefficient filtering mechanisms, particularly in multi-dimensional datasets.
Innovation Solution
A query engine with multi-layered hierarchical aggregation capabilities, adaptive join strategies, and robust granularity definitions, optimized for complex data fabrics, enabling efficient and accurate computations across granularities and dimensions.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Adaptability or versatility
If traditional query engines are used, then system simplicity is maintained, but aggregation capabilities are restricted and handling of granular data structures is challenging
Solution Approach 1:
The query engine is segmented into multiple specialized components: a parser for query interpretation, a planner for execution strategy formulation, and a translator for multi-layered hierarchical aggregation. This segmentation allows each component to handle specific aspects of complex queries independently, improving aggregation capabilities while managing overall system complexity through modular design.
Solution Approach 2:
The system introduces multi-layered hierarchical aggregation that operates across multiple dimensions of data granularity. Instead of single-layer aggregation, the engine processes data through hierarchical levels, enabling comprehensive aggregation capabilities that traditional engines lack, while the dimensional approach systematically manages the increased complexity.
2Productivity
If traditional filtering mechanisms are used, then ease of operation is maintained, but filtering efficiency in multi-dimensional datasets is poor
Solution Approach 1:
The filtering mechanism employs dynamic evaluation plans that adapt to the specific characteristics of multi-dimensional datasets. The planner component generates optimized filtering strategies based on data distribution and query requirements, significantly improving filtering efficiency while the automated nature of this adaptation maintains ease of operation for users.
3Adaptability or versatility
If neighbor aggregations are used as a workaround, then some aggregation is achieved, but the process becomes cumbersome and prone to errors due to row duplication
Solution Approach 1:
The system introduces an intermediary translation layer that converts complex multi-layered aggregation requirements into standardized execution plans. This intermediary component handles the complexity of hierarchical aggregation internally, providing users with simple, intuitive query interfaces while ensuring accurate results without row duplication issues that plague traditional workaround approaches.
Data Source
AI summary
The disclosed embodiments provide systems and methods for performing queries via an intelligent query engine. Various embodiments include receiving an input query and parsing the input query into a query representation object; generating an evaluation plan based on the query representation object, wherein the evaluation plan comprises a graph of computation nodes, each computation node specifying a granularity for grouping, associated filters, an aggregation schema, and join dependencies required for node computation, and wherein the evaluation plan is ordered to account for hierarchical dependencies among the computation nodes; translating the evaluation plan into an executable query optimized for a specific target data store, wherein the translation adapts query syntax and join structures to capabilities of a target data store; and executing the translated query on the target data store, resolving dependencies and aggregations according to the evaluation plan to generate query results satisfying the input query.


