Ontology Query Scheduling With Fair Resource Preemption
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Existing systems struggle to efficiently manage query execution across ontology-based databases in a multi-user environment, leading to unfair utilization of computing resources and inefficient performance.
Innovation Solution
A system that transforms ontology queries into database queries, selects appropriate databases for execution, and manages resource utilization by preempting queries based on priority and availability, ensuring fair and efficient query execution.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If multiple users execute queries against ontology-based databases simultaneously, then query execution capability is improved, but resource utilization fairness deteriorates
Solution Approach 1:
The system dynamically adjusts query execution priorities and resource allocation based on real-time conditions. The query execution manager monitors resource usage and dynamically preempts lower-priority queries to ensure higher-priority queries receive necessary resources, making the resource allocation flexible and adaptive rather than static
Solution Approach 2:
The system implements feedback mechanisms by monitoring query execution status, resource consumption, and priority levels. The query execution manager continuously receives feedback about system state and adjusts query preemption decisions accordingly, creating a closed-loop control system that maintains fairness while supporting multi-user productivity
2Adaptability or versatility
If complex database queries are executed, then query functionality is improved, but resource consumption increases
Solution Approach 1:
The system applies partial action by preempting only the necessary portion of query execution when resources become constrained. Rather than abandoning entire queries, the manager selectively pauses or terminates specific queries based on their priority levels and current resource consumption, allowing partial completion of high-priority queries while limiting resource usage of lower-priority ones
3Productivity
If query preemption is implemented to manage resources, then resource allocation efficiency is improved, but query execution complexity increases
Solution Approach 1:
The query execution manager serves as an intermediary layer between the ontology-based database system and the underlying database execution engine. This mediator handles the complexity of query preemption, priority management, and resource allocation, shielding the rest of the system from these complex control operations while maintaining efficient resource utilization
Data Source
AI summary
A system for balancing query execution against ontology-based databases among multiple user accounts and related methods are disclosed. The system is programmed to receive database queries transformed from ontology queries from user accounts. The system is further programmed to manage execution of the database queries to enable fair utilization of computing resources among the user accounts, based on tracked usage of computing resources of each user account or estimated costs of pending database queries considering access controls associated with the ontology. Managing execution of the database queries comprises preempting a complex database query for another database query associated with a user account having a current top priority in query execution.


