US 12,105,705 B2
Database query processing with database clients
Shuo Li, Beijing (CN); Xiaobo Wang, Beijing (CN); Sheng Yan Sun, Beijing (CN); and Ping Wang, San Jose, CA (US)
Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION, Armonk, NY (US)
Filed by INTERNATIONAL BUSINESS MACHINES CORPORATION, Armonk, NY (US)
Filed on Jun. 16, 2022, as Appl. No. 17/842,230.
Prior Publication US 2023/0409575 A1, Dec. 21, 2023
Int. Cl. G06F 16/2453 (2019.01)
CPC G06F 16/24542 (2019.01) [G06F 16/24535 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A computer-implemented method for real-time database query processing, comprising:
receiving, by a client device of a group of client devices, from a server device comprising a database, an indication that the client device has been selected as a primary client device of the group of client devices;
obtaining, by the client device, a first set of queries to the database from a plurality of other client devices of the group of client devices;
generating, by the client device, a second set of queries by normalizing the first set of queries;
determining, by the client device, a set of access paths corresponding to the second set of queries, wherein at least one access path of the set of access paths comprises at least one path for retrieving first data from the database previously retrieved and currently stored on at least one client device of the plurality of other client devices, and wherein at least one access path of the set of access paths comprises at least one path for retrieving second data currently stored in the database on the server device;
determining, by the client device, based on a resource usage cost analysis, that retrieving the first data from the at least one client device of the plurality of other client devices has a lower resource usage cost than retrieving the first data from the server device; and
retrieving, by the client device, based on the set of access paths, data comprising the first data from the at least one client device of the plurality of other client devices and the second data from the server device.