IP Library Granted Patent US 11,836,141
Granted Patent B2
US 11,836,141 · App. 17/493,164 · Granted Dec 5, 2023

Ranking database queries

Inventors: Arie Bregman (Gan Yavne, IL); David Sariel (Holon, IL)
Assignee: Red Hat, Inc.
G06F16/24578G06F16/2455
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,836,141
App. No.
17/493,164
Granted
Dec 5, 2023
Kind
B2
Abstract

Systems and methods of the disclosure include: submitting, by a processing device, a plurality of queries to a database associated with an application, wherein each query of the plurality of queries comprises a request for one or more records from the database; determining a period of time for executing each query of the plurality of queries; and executing each query of the plurality of queries, wherein executing each query comprises returning a set of portions of the one or more records within the period of time.

Claims (57)

1. A method comprising:

submitting, by a query ranking system for reducing a period of time to return one or more records from a database associated with an application running on a client device, a plurality of queries to database associated with the application, wherein each query of the plurality of queries comprises a request for the one or more records from the database;

assigning, by the query ranking system, a period of time for executing each query of the plurality of queries;

determining, by the query ranking system, a ranking assigned to each query of the plurality of queries, wherein the ranking comprises a numeric value assigned to each query indicating a relative priority of each query to one or more queries of the plurality of queries;

determining a value of an aging parameter and a value of a weighting parameter associated with the database; and

in response to determining that the value of the aging parameter and the value of the weighting parameter are each a respective value between a minimum value and a maximum value, executing, by the query ranking system, each query of the plurality of queries within the assigned period of time and according to the ranking assigned to each query, wherein executing each query comprises returning a first set of portions of the one or more records within the assigned period of time and a second set of portions of the one or more records in the order corresponding to the ranking assigned to each query.

2. The method of claim 1 , further comprising:

identifying the weighting parameter associated with the database;

responsive to identifying that the weighting parameter satisfies a first condition, executing each query within the assigned period of time; and

responsive to identifying that the weighting parameter satisfies a second condition, executing each query according to the ranking assigned to each query.

3. The method of claim 2 , wherein the first condition specifies the minimum value and the second condition specifies the maximum value.

4. The method of claim 2 , further comprising:

responsive to identifying that the weighting parameter satisfies a third condition, executing a first set of the plurality of queries within the assigned period of time and executing a second set of the plurality of queries according to the ranking assigned to each query.

5. The method of claim 1 , further comprising:

determining a memory bandwidth associated with the database; and

executing each query according to the memory bandwidth.

6. The method of claim 1 , further comprising:

determining a number of records returned of each set of portions of the one or more records.

7. The method of claim 1 , further comprising:

in response to determining that the value of the aging parameter and the value of the weighting parameter are each a respective minimum value, executing, by the query ranking system, each query of the plurality of queries to return the first set of portions of the one or more records from the database within the assigned period of time.

8. The method of claim 1 , further comprising:

in response to determining that the value of the aging parameter and the value of the weighting parameter are each a respective maximum value, executing, by the query ranking system, each query of the plurality of queries according to the ranking assigned to each query, wherein executing each query comprises returning the second set of portions of the one or more records from the database in an order corresponding to the ranking assigned to each query.

9. A system, comprising:

a memory;

a processing device operatively coupled to the memory, the processing device configured to:

submit, by a query ranking system for reducing a period of time to return one or more records from a database associated with an application running on a client device, a plurality of queries to the database associated with the application, wherein each query of the plurality of queries comprises a request for the one or more records from the database;

assigning, by the query ranking system, a period of time for executing each query of the plurality of queries;

determine, by the query ranking system, a ranking assigned to each query of the plurality of queries, wherein the ranking comprises a numeric value assigned to each query indicating a relative priority of each query to one or more queries of the plurality of queries, and wherein determining the ranking comprises determining a value of an aging parameter and a value of a weighting parameter associated with the database; and

in response to determining that the value of the aging parameter and the value of the weighting parameter are each a respective value between a minimum value and a maximum value, execute, by the query ranking system, each query of the plurality of queries within the assigned period of time and according to the ranking assigned to each query, wherein executing each query comprises returning a first set of portions of the one or more records within the assigned period of time and a second set of portions of the one or more records in the order corresponding to the ranking assigned to each query.

10. The system of claim 9 , further comprising:

identifying the weighting parameter associated with the database;

responsive to identifying that the weighting parameter satisfies a first condition, executing each query within the assigned period of time; and

responsive to identifying that the weighting parameter satisfies a second condition, executing each query according to the ranking assigned to each query.

11. The system of claim 10 , wherein the first condition specifies the minimum value and the second condition specifies the maximum value.

12. The system of claim 10 , responsive to identifying that the weighting parameter satisfies a third condition, executing a first set of the plurality of queries within the assigned period of time and executing a second set of the plurality of queries according to the ranking assigned to each query.

13. The system of claim 9 , further comprising:

determining a memory bandwidth associated with the database; and

executing each query according to the memory bandwidth.

14. The system of claim 9 , further comprising:

determining a number of records returned of each set of portions of the one or more records.

15. A non-transitory machine-readable storage medium storing instructions that cause a processing device to:

submit, by a query ranking system for reducing a period of time to return one or more records from a database associated with an application running on a client device, a plurality of queries to the database associated with the application, wherein each query of the plurality of queries comprises a request for the one or more records from the database;

assign, by the query ranking system, a period of time for executing each query of the plurality of queries;

determine, by the query ranking system, a ranking assigned to each query of the plurality of queries, wherein the ranking comprises a numeric value assigned to each query indicating a relative priority of each query to one or more queries of the plurality of queries, and wherein determining the ranking comprising determining a value of an aging parameter and a value of a weighting parameter associated with the database; and

in response to determining that the value of the aging parameter and the value of the weighting parameter are each a respective value between a minimum value and a maximum value, execute, by the query ranking system, each query of the plurality of queries within the assigned period of time and according to the ranking assigned to each query, wherein executing each query comprises returning a first set of portions of the one or more records within the assigned period of time and a second set of portions of the one or more records in the order corresponding to the ranking assigned to each query.

16. The non-transitory machine-readable storage medium of claim 15 , wherein the processing device is further to:

identify the weighting parameter associated with the database;

responsive to identifying that the weighting parameter satisfies a first condition, execute each query within the assigned period of time; and

responsive to identifying that the weighting parameter satisfies a second condition, execute each query according to the ranking assigned to each query.

17. The non-transitory machine-readable storage medium of claim 16 , wherein the first condition specifies the minimum value and the second condition specifies the maximum value.

18. The non-transitory machine-readable storage medium of claim 16 , wherein the processing device is further to:

responsive to identifying that the weighting parameter satisfies a third condition, execute a first set of the plurality of queries within the assigned period of time and execute a second set of the plurality of queries according to the ranking assigned to each query.

19. The non-transitory machine-readable storage medium of claim 15 , wherein the processing device is further to:

determine a memory bandwidth associated with the database; and

execute each query according to the memory bandwidth.

20. The non-transitory machine-readable storage medium of claim 15 , wherein the processing device is further to:

determine a number of records returned of each set of portions of the one or more records.

Assignments (2)
CHANGE OF NAME Recorded Mar 3, 2026
From: RED HAT, INC.
To: RED HAT, LLC
Reel/Frame 074913/0759 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 4, 2021
From: BREGMAN, ARIE; SARIEL, DAVID
To: RED HAT, INC.
Reel/Frame 057691/0381 →
Continuity (1)
Related Publication 20230106856A1 · Apr 6, 2023