The system, method, and program of this invention collects multi-column
statistics, by a database management system, to reflect a relationship
among multiple columns of a table in a relational database. These
statistics are stored in the system catalog, and are used during query
optimization to obtain an estimate of the number of qualifying rows when a
query has predicates on multiple columns of a table.
A multi-column linear quantile statistic is collected by dividing the data
of multiple columns into sub-ranges where each sub-range has approximately
an even distribution of data, and determining a frequency and cardinality
of each sub-range. A multi-column polygonal quantile statistic is
collected by dividing the data of multiple columns into sub-spaces where
each sub-space contains approximately the same number of tuples, and
determining a frequency and cardinality of each sub-space.
The system catalog is accessed for the stored multi-column linear quantile
statistic for a query having a single range predicate and at least one
equal predicate to determine the selectivity value for the predicates of
the query. The system catalog is accessed for the stored multi-column
polygonal quantile statistic for a query having more than one range
predicate. These statistics are used in various ways to determine the
selectivity value for the predicates of the query.
El sistema, el método, y el programa de esta invención recoge estadística multi-column, por un sistema de gerencia de base de datos, para reflejar una relación entre columnas múltiples de una tabla en una base de datos emparentada. Esta estadística se almacena en el catálogo del sistema, y se utiliza durante la optimización de la pregunta para obtener una estimación del número de filas calificativas cuando una pregunta tiene predicados en columnas múltiples de una tabla. Una estadística linear multi-column del quantile es recogida dividiendo los datos de columnas múltiples en las secundario-gamas donde cada secundario-gama tiene aproximadamente una distribución uniforme de datos, y determinando una frecuencia y un cardinality de cada secundario-gama. Una estadística poligonal multi-column del quantile es recogida dividiendo los datos de columnas múltiples en los sub-spaces donde cada sub-space contiene aproximadamente el mismo número de tuples, y determinando una frecuencia y un cardinality de cada sub-space. El catálogo del sistema está alcanzado para la estadística linear multi-column almacenada del quantile para una pregunta que tiene un solo predicado de la gama y por lo menos un predicado igual para determinar el valor de la selectividad para los predicados de la pregunta. El catálogo del sistema está alcanzado para la estadística poligonal multi-column almacenada del quantile para una pregunta que tiene más de un predicado de la gama. Esta estadística se utiliza en varias maneras de determinar el valor de la selectividad para los predicados de la pregunta.