CA2306946C

Improved query execution in query processing systems

Abstract

A query processing system having a data manager, and a query manager also includes a buffer. The query manager calls the data manager to access data based on a query. Where there is no predicate check or consumption operation on the record accessed, the data manager will notionally return the record to the query manager. However, the data manager accomplishes the return by writing the relevant portions of the record to a buffer. The data manager maintains stabilization of the page containing the record while the buffer is being written to. The data manager continues to access records on the stabilized page and to write such records to the buffer where appropriate. The query manager retrieves the records from the buffer after the data manager has completed its operation resulting from the query manager call.

CA2306946C, drawing sheet 1
Sheet 1 of 2

Term

Term ended

Expired 28 April 2020, 6.4 years ago.

  1. Priority and filed
  2. Granted
  3. Expired
  4. Today

7 claims: 3 independent, 4 dependent

  1. 1
    CA 02306946 2003-07-30 The embodiments of the invention in which an exclusive property or privilege is claimed are defined as follows:1. A method for processing a database query on a set of data in a database management system comprising a data manager, a query processor, and a buffer, wherein the set of data is stored on pages, the method comprising the steps of: a. the query processor calling the data manager to request the return of data from the set of data, b. the data manager accessing the set of data to locate query-specified data and determining if the query-specified data is to be ignored, consumed, or returned to the query processor, c. where the data manager determines that the query-specified data is to be returned to the query processor, the data manager writing the query-specified data to the buffer, the data manager repeating access to the set of data until all data requested by the query processor has been accessed, d. the query processor retrieving query-specified data from the buffer;and, e. the data manager stabilizing the page on which the query-specified data is located prior to accessing said data.
  2. 4
    A computer program product for a database management system comprising a data manager, a query processor and a buffer for processing a database query on a set of data, the set of data CA9-2000-0015 CA 02306946 2003-07-30 is stored on pages, the computer program product comprising a computer usable medium having computer readable code means embodied in said medium, comprising computer readable program code means for the query processor to call the data manager to request the return of data from the set of data, computer readable program code means for the data manager to access the set of data to locate query-specified data and to determine if the query-specified data is to be ignored, consumed, or returned to the query processor, computer readable program code means for, where the data manager determines that the query-specified data is to be returned to the query processor, the data manager to write the query-specified data to the buffer, and for the data manager to repeat access to the set of data until all data requested by the query processor has been accessed, computer readable program code means for the query processor to retrieve queryspecified data from the buffer, and, computer readable program code means for the data manager to stabilize the page on which the query-specified data is located prior to accessing said data.
  3. 6
    A query processing system comprising:a data manager, a query processor, a buffer for processing a database query on a set of data, the set of data is stored on pages, the query processor including means for calling the data manager to request the return CA9-2000-0015 CA 02306946 2003-07-30 of data from the set of data, the data manager including means for accessing the set of data to locate query-specified data and for determining if the query-specified data is to be ignored, consumed, or returned to the query processor, 5 the data manager including means for, where determining that the query-specified data is to be returned to the query processor, writing the query-specified data to the buffer, the data manager repeating access to the set of data until all data requested by the query processor has been accessed, the query processor including means for retrieving query-specified data from the buffer, 10 and, the data manager further including means for stabilizing the page on which the queryspecified data is located prior to accessing said data.