Unified Query Server for Search and Analytics Integration
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional software tools for accessing data in database systems are minimally integrated, lacking a seamless combination of search and analytics functionalities, which limits their effectiveness in retrieving and analyzing data efficiently.
Innovation Solution
A system architecture that integrates search and analytics tools by using a query server to generate an execution plan based on metadata, allowing simultaneous execution of search and analytics queries with a unified query model, and providing a user interface for interactive query authoring and execution, with metadata persistence for query reuse.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If search tools and analytics tools are used separately with minimal integration, then each tool can be optimized for its specific function, but the system complexity increases and data access efficiency decreases
Solution Approach 1:
The patent combines search functionality and analytics functionality into a single integrated system. The query processor receives and handles both search queries and analytics queries through a unified architecture, eliminating the need for separate tool implementations and reducing overall system complexity while maintaining functional optimization.
Solution Approach 2:
The query processor is designed with multi-functionality to handle both search operations and analytics operations. The execution plan generator creates unified execution plans that can accommodate different query types (search and analytics) using the same underlying infrastructure, including the query compiler, optimization module, and data source interfaces.
2Productivity
If search tools and analytics tools are minimally integrated, then implementation is simpler, but data retrieval and analysis efficiency is reduced
Solution Approach 1:
The query processor acts as an intermediary layer between the user and the data sources, unifying the handling of search and analytics queries. This intermediary component translates diverse query types into a common execution plan format, optimizing data access efficiency while managing integration complexity through a centralized processing architecture.
Solution Approach 2:
The system uses parameter changes to adapt the execution plan based on the query type (search or analytics). The query compiler and optimization module adjust execution parameters dynamically, allowing the same integrated system to efficiently handle different query operations by modifying execution parameters rather than requiring separate dedicated systems.
3Productivity
If a unified query model is used to execute both search and analytics queries simultaneously, then data access efficiency improves, but query processing complexity increases
Solution Approach 1:
The query processing system is segmented into distinct functional modules: query compilation, execution plan generation, optimization, and execution. This segmentation allows the unified query model to handle both search and analytics queries efficiently by routing them through appropriate processing stages, managing complexity through modular architecture while maintaining high execution efficiency.
4Ease of operation
If separate search and analytics tools are used, then each tool can be optimized independently, but user interaction and data management become less efficient
Solution Approach 1:
The system merges search and analytics tools into a single integrated platform with a unified user interface. Users can interact with both search and analytics functionalities through one system, improving ease of operation by eliminating the need to switch between separate tools while the backend architecture manages the complexity of integrating these functions.
Data Source
Figure 1
Figure 2
Figure 2
AI summary
A system includes reception of a request conforming to a modeled query and join filter criteria, the request comprising a first subrequest associated with a search attribute view and a second subrequest associated with an analytical view, definition of a join between the search attribute view and the analytical view based on one or more view attributes of the search attribute view, and filtering of a result set associated with the first subrequest based on the join and on the join filter criteria.