Performance and resource use

DQL processing consumes memory, disk and CPU resources. To preserve those resources and to speed up query processing, optimize your queries as much as possible.

There are three ways to service query terms in DQL:
  • NSF data scans
  • View entry scans
  • New in V11 Full text index access
  • New in V11.0.1 Full text index access for numeric and date-only query terms.
  • New in V12.0.1 Named result sets rapidly provide reusable, commonly queried DQL results.
In general, full text indexes are the most efficient to use followed by view entries and NSF summary scans, though that can vary by data cardinality, view construction and size of results. Equality searches that find a small or medium number of documents are particularly faster using views. So, it becomes important to know how the DQL engine optimizes access to use full text indexes and views. The following table illustrates the execution aspects of DQL:
Table 1. Execution aspects of DQL
Aspects of execution Named result sets Full text search View scan NSF scan
Relative speed1 1 2 3 4
Execution order 1 1 2 3
Operations supported in, in all contains, wildcard

For numeric and date-only terms: =, >, >=, <, <=

=, >, >=, <, <=, IN, ‘viewname’.column =, >, >=, <, <=, IN
Consolidation N/A ANDed terms coupled ANDed range terms coupled All siblings executed together

1Relative speed, where 1 is fastest and 4 is slowest.

For consolidation, DQL combines multiple terms to perform a single scan or index search operation when it is optimal. DQL also "feeds" subsequent terms with the results of prior ones, significantly limiting the overall cost. For instance, any document eliminated by term1 will not be searched when that term is ANDed with term2.

DQL processing functions very well in the mix of operational traffic on a Domino® server but it is not free in that aspect either. Read-only view access increases as does NSF summary data access. That processing is nothing new to the server, but its effect should be studied to avoid any regression in related processing.

To use the index of a view or folder, that index must have some special properties.