Home | Previous Page | Next Page   Tuning Database Server Performance > Tuning Memory Allocation >

Managing Memory for DSS Applications

If your database server must execute many memory-consuming queries concurrently, the first few queries submitted might quickly exhaust the amount of memory specified in the DS_TOTAL_MEMORY configuration parameter.

Unless you allow the optimizer to determine memory allocation for queries, as described in Enabling Optimizer-Determined Memory Allocation, the active PDQPRIORITY setting and the MAX_PDQPRIORITY configuration parameter together determine the amount of memory to allocate to a query. For information about how these configuration parameters work together to determine how memory is allocated for queries, seeAllocating Memory for DSS Queries.

No well-defined rules exist for choosing these environment variable and parameter values. Consider the following factors:

For information about managing memory use by specific sessions or groups of sessions, see Enabling Optimizer-Determined Memory Allocation, Restricting Optimizer-Determined Memory Allocation, and Overriding PDQPRIORITY Settings.

Limiting the Number of Concurrent Queries

To limit the number of memory-consuming queries that run concurrently, use the DS_MAX_QUERIES configuration parameter.

Memory-consuming queries are managed by the Resource Grant Manager (RGM). Such queries perform complex tasks across coservers, such as scans of entire tables, multiple hash joins, and unnesting subqueries, which results in the creation of temporary tables. The RGM manages memory-consuming queries.

You might limit the number of concurrent DSS queries for the following reasons:

Home | [ Top of Page | Previous Page | Next Page | Contents | Index ]