Parallel database query (PDQ)
You can manage how the database server performs PDQ and you can monitor the resources that the database server uses for PDQ.
- What PDQ is
Parallel database query (PDQ) is a database server feature that can improve performance dramatically when the server processes queries that decision-support applications initiate. PDQ enables Informix to distribute the work for one aspect of a query among several processors. For example, if a query requires an aggregation, Informix can distribute the work for the aggregation among several processors. - Structure of a PDQ query
Each decision-support query has a primary thread. The database server can start additional threads to perform tasks for the query (for example, scans and sorts). Depending on the number of tables or fragments that a query must search and the resources that are available for a decision-support query, the database server assigns different components of a query to different threads. - Database server operations that use PDQ
Informix processes some types of SQL operations that the database server processes in parallel. However some situations limit the degree of parallelism that Informix can use. - The Memory Grant Manager
The Memory Grant Manager (MGM) is a database server component that coordinates the use of memory, CPU virtual processors (VPs), disk I/O, and scan threads among decision-support queries. The MGM uses the DS_MAX_QUERIES, DS_TOTAL_MEMORY, DS_MAX_SCANS, and MAX_PDQPRIORITY configuration parameters to determine the quantity of these PDQ resources that can be granted to a decision-support query. - The allocation of resources for parallel database queries
When you configure the database server, consider how the use of PDQ affects users of OLTP, decision-support (DSS) applications, and other applications. Then you can plan how to allocate resources for PDQ. - Managing PDQ queries
The database server administrator, the writer of an application, and the users all have a certain amount of control over the amount of resources that Informix allocates to processing a query. The database server administrator exerts control through the use of configuration parameters. The application developer or the user can exert control through an environment variable or SQL statement. - Monitoring resources used for PDQ and DSS queries
You can monitor the resources (shared memory and threads) that the Memory Grant Manager (MGM) has allocated for PDQ queries and the resources that PDQ and decision-support (DSS) queries currently use.
Parent topic: Performance Guide