| CPC G06F 16/24537 (2019.01) [G06F 9/544 (2013.01); G06F 12/0893 (2013.01); G06F 16/221 (2019.01); G06F 2212/608 (2013.01)] | 20 Claims |

|
1. A system for enhancing processing of a query to a relational database, the system comprising:
processing circuitry of a server, the server being associated with a database comprising a plurality of tuples, each of the plurality of tuples comprising a plurality of attributes, the processing circuitry being configured to:
execute a query engine configured to receive a query, the query comprising at least one operator relating to at least one of the plurality of attributes;
propagate the at least one operator to a storage engine,
execute the storage engine, wherein the storage engine is configured to propagate the at least one operator to an adjusted memory management module, wherein the adjusted memory management module is configured to:
retrieve, from a secondary storage device storing at least one part of the database, a plurality of tuples,
write, into a cache, the plurality of tuples,
filter, using the at least one operator, the plurality of tuples written into the cache and thereby determine a set of complying tuples, each complying tuple complying with the at least one operator, and
return, to the storage engine, the set of complying tuples;
propagate the set of complying tuples from the storage engine to the query engine; and
output, by the query engine, each of the complying tuples received from the storage engine,
wherein the adjusted memory management module is configured to perform the filtering, using the at least one operator, the plurality of tuples retrieved from the storage medium and thereby determine the set of complying tuples by implementing near data processing (NDP) to filter the tuples written into the cache at the point of data retrieval from the storage medium.
|