Semantic Database Query Optimization via Reduction Rate Ordering
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Conventional relational databases are inefficient in reducing the 'searching cost' for semantic databases, as existing techniques do not effectively minimize the processing time and load associated with retrieving relevant information from large datasets.
Innovation Solution
A server is configured to handle database queries by analyzing and rewriting sub-queries based on collected statistics and semantic rules, optimizing the search path by reducing the number of nodes and instances to be searched, and calculating a Reduction Rate (RR) for each sub-query to determine the most efficient execution order, thereby minimizing the search space and processing time.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If conventional relational database techniques are used to handle semantic database queries, then the database can be queried using existing tools, but the searching cost and processing time increase significantly
Solution Approach 1:
The patent applies preliminary action by pre-calculating and storing statistics about the semantic database structure (number of instances per class, predicate distributions) before queries are executed. This allows the query optimizer to make informed decisions about search space reduction without performing expensive calculations during query execution, thereby reducing searching time while maintaining productivity.
Solution Approach 2:
The patent replaces the mechanical brute-force search approach with a statistical optimization system. Instead of systematically searching through all possible data paths in the semantic database, the system uses pre-computed statistics to predict and prune search spaces, substituting computational mechanics with statistical reasoning to reduce processing time.
2Loss of time
If the search space is reduced by optimizing query execution, then the processing time decreases, but the complexity of query optimization increases
Solution Approach 1:
The patent segments the query optimization process into distinct phases: query parsing, statistics retrieval, search space estimation, and execution plan generation. This segmentation allows each component to be independently optimized and managed, reducing the apparent complexity while achieving significant processing time reductions through systematic optimization at each stage.
Solution Approach 2:
The patent introduces an intermediary query optimizer component that acts as a mediator between the raw query and the database execution engine. This intermediary layer handles the complex optimization logic by utilizing pre-computed statistics to generate optimized execution plans, thereby reducing processing time without directly increasing the complexity of the underlying database system.
3Productivity
If statistics are collected and analyzed to optimize sub-query execution order, then the search cost is reduced, but the initial setup and maintenance overhead increases
Solution Approach 1:
The patent applies preliminary action by collecting and storing statistical information about the semantic database structure in advance, including the number of instances per class and predicate distribution patterns. These statistics are computed once or periodically rather than for each query, significantly improving search efficiency while minimizing the overhead impact on overall system performance.
Solution Approach 2:
The patent implements self-service by having the database system automatically collect, update, and maintain its own statistical information without requiring external intervention. The system monitors and updates statistics as data is inserted, updated, or deleted, allowing the optimization mechanism to adapt to changing data patterns while keeping maintenance overhead automated and minimal.
Data Source
Figure 1~2
Figure 3~5
Figure 3a
AI summary
A method and a server (300) for handling database queries directed to a semantic database (302) with stored information according to a preset ontology structure and annotated as element identifiers comprising triplets with a subject, a predicate and an object. In the server (300), a data analyser (300a) collects statistics from the database and defines semantic rules from the information in the database. When a database query is received with a first set of sub-queries, a query optimiser (300c) rewrites the query as a second set of sub-queries in the triplet format based on any of the ontology structure, the collected statistics and the defined rules. A Reduction Rate RR is also calculated for the sub-queries relating to the number of distinct subjects and objects appearing in the database with the predicates of the sub-queries. The sub-queries of the second set are finally provided as a modified query in an order according to decreasing Reduction Rates for execution in that order when searching the database.