This is an old revision of the document!
Omnidex has two main configuration settings for controlling optimization of queries. The first option tells Omnidex which approaches it may use as needed to optimize a query. The second option tells Omnidex which approaches are required when optimizing a query, or else the query should not be processed.
The OPTIMIZATION setting controls the approaches available to Omnidex when it optimizes a query. This setting can be set using an option on the SELECT statement, or with a SET OPTIMIZATION command:
select ... with OPTIMIZATION='setting1,setting2,setting3,...'
set optimization setting1,setting2,setting3,...
The OPTIMIZATION settings are shown in the table below. The default setting is shown in bold.
Allow optimization | Disallow optimization | Description |
---|---|---|
QUAL | NO_QUAL | Omnidex can use indexes to perform qualifications, usually to process criteria in the WHERE clause. |
AGGREGATION | NO_AGGREGATION | Omnidex can use indexes to perform aggregations, including grouped counts, distinct counts, sums, averages, mins and maxes. |
ORDERBY | NO_ORDERBY | Omnidex can use indexes to perform ordering as required by the ORDER BY clause. |
IDXRETRIEVAL | NO_IDXRETRIEVAL | Omnidex can use indexes to retrieve select items for the result set, avoiding access to the database. |
CACHEQUAL | NO_CACHEQUAL | Omnidex can reuse qualifications from the previous query on this connection. |
DISTINCT_KEY | NO_DISTINCT_KEY | Omnidex can perform aggregations against a QuickText index, and the result set represents an entry per keyword rather than an entry per row. |
ROLLUP | NO_ROLLUP | Omnidex can redirect redirect the query to a Rollup Table for improved performance. |
SORTMERGE | NO_SORTMERGE | Omnidex can perform a sort/merge join operation between two tables in order to improve performance. |
HDC | NO_HDC | Omnidex can use a temporary Hashed Data Cache for improved performance. |
LINK | NO_LINK | Omnidex can use indexes to perform table joins. |
PRIKEY | NO_PRIKEY | Omnidex can favor using the underlying databases primary key indexes rather than using Omnidex indexes. |
STARSCHEMA | NO_STARSCHEMA | Omnidex can perform intermediate aggregations in the fact table of a star schema prior to accessing the dimension tables. |
UNRESTRICTEDQUAL | NO_UNRESTRICTEDQUAL | Omnidex can ignore the normal restrictions on special characters, embedded operators and other rules about criteria when performing qualifications. |
NONE | Omnidex should disable all optimizations when processing this query. | |
NO_ODX | Omnidex should disable all optimizations that would involve Omnidex indexes when processing this query. |
See also: