QUERY OPTIMIZATION ADAPTIVE TO SYSTEM MEMORY LOAD FOR PARALLEL DATABASE SYSTEMS
First Claim
1. A method for adaptively generating a query execution plan for a parallel database distributed among a cluster of data nodes, comprising:
- receiving, with a processor, memory usage data from a plurality of data nodes comprising a plurality of network devices;
calculating a representative memory load corresponding to the data nodes based on the memory usage data;
categorizing a memory mode corresponding to the data nodes based on the calculated representative memory load;
calculating an available work memory corresponding to the data nodes based on the memory mode; and
generating the query execution plan for the data nodes based on the available work memory, wherein the memory usage data is determined from a plurality of monitored individual memory loads associated with the data nodes and the query execution plan corresponds to the currently available work memory.
1 Assignment
0 Petitions
Accused Products
Abstract
A method for adaptively generating a query execution plan for a parallel database distributed among a cluster of data nodes includes receiving memory usage data from a multiple data nodes including network devices, calculating a representative memory load corresponding to the data nodes based on the memory usage data, categorizing a memory mode corresponding to the data nodes based on the calculated representative memory load, calculating an available work memory corresponding to the data nodes based on the memory mode, and generating the query execution plan for the data nodes based on the available work memory, wherein the memory usage data is based on monitored individual memory loads associated with the data nodes and the query execution plan corresponds to the currently available work memory.
27 Citations
20 Claims
-
1. A method for adaptively generating a query execution plan for a parallel database distributed among a cluster of data nodes, comprising:
-
receiving, with a processor, memory usage data from a plurality of data nodes comprising a plurality of network devices; calculating a representative memory load corresponding to the data nodes based on the memory usage data; categorizing a memory mode corresponding to the data nodes based on the calculated representative memory load; calculating an available work memory corresponding to the data nodes based on the memory mode; and generating the query execution plan for the data nodes based on the available work memory, wherein the memory usage data is determined from a plurality of monitored individual memory loads associated with the data nodes and the query execution plan corresponds to the currently available work memory. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A method for adaptively generating a query execution plan for a parallel database distributed among a cluster of data nodes, comprising:
-
monitoring, with a processor, a memory load associated with a data node comprising a network device; categorizing a memory mode corresponding to the data node based on the memory load; calculating an available work memory corresponding to the data node based on the memory mode; receiving a query execution plan segment; and adapting the query execution plan segment for the data node based on the available work memory, wherein the data node is associated with the cluster and the query execution plan segment corresponds to the current available work memory. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17)
-
-
18. A device for adaptively generating a query execution plan for a parallel database distributed among a cluster of data nodes, comprising:
an individual network device associated with the cluster, the individual network device comprising; a memory that stores data corresponding to the database; a memory load monitor that monitors a memory load associated with the individual network device; and a processor that receives a query execution plan segment, modifies the query execution plan segment to create a modified query execution plan segment corresponding to the memory load, and executes the modified query execution plan segment. - View Dependent Claims (19, 20)
Specification