Prefix Query Conversion for Complex Key-Value Store Search
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
The execution of queries across disparate systems is inefficient due to the need to navigate different languages, formats, and protocols, leading to a steep learning curve and inefficiencies in data management, particularly in low-level databases like key value stores that lack high-level query systems for complex queries.
Innovation Solution
A computing server converts high-level queries into optimized predicate expression data instances, generates an iteration tree, and uses a specialized evaluation engine to execute queries efficiently in key-value stores, leveraging lazy evaluation and key prefix searches to minimize database reads.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of operation
If high-level query languages are used for complex queries, then query expressiveness and ease of use are improved, but system complexity and resource requirements increase
Solution Approach 1:
The patent introduces an intermediary translation layer that converts high-level query language (e.g., SQL) into low-level key-value store operations. This mediator component handles the complexity of query translation, allowing users to write expressive queries without the system needing to natively support complex query languages, thus resolving the contradiction between query expressiveness and system complexity
Solution Approach 2:
The query execution is segmented into distinct phases: translation phase (converting high-level queries to low-level operations), optimization phase (generating iteration trees), and execution phase (performing prefix searches). This segmentation allows each component to focus on specific tasks, reducing overall system complexity while maintaining high-level query capabilities
2Productivity
If low-level key-value stores are used for data storage, then performance and scalability are improved, but query capability for complex queries deteriorates
Solution Approach 1:
The patent makes the key-value store multi-functional by implementing a universal query translation mechanism that can handle various types of complex queries (joins, aggregations, subqueries) by translating them into sequences of simple key-value operations. This allows the simple key-value store to provide both high performance and complex query capabilities through the translation layer
3Productivity
If query translation and optimization processes are added, then query execution efficiency is improved, but computational overhead increases
Solution Approach 1:
The patent performs query translation and optimization in advance, before actual data retrieval. The iteration tree is constructed and optimized beforehand, allowing the execution phase to simply follow pre-planned operations. This preliminary action reduces real-time computational overhead during query execution while maintaining high execution efficiency
Data Source
AI summary
A system includes a computing server having a processor and memory. The memory stores code including instructions. The instructions, when executed by the system, cause the system to perform steps including receiving a query from a user device, converting the query into a predicate expression data instance, generating an iteration tree based on the predicate expression data instance, determining search data based on the generated iteration tree, accessing a set of index entries of the key-value store, and searching the set of index entries based on the search data. A graphical user interface is in communication with the computing server and configured to display an indicator associated with the results of the search.


