-
Notifications
You must be signed in to change notification settings - Fork 55
User Interface (v1.5)
Andrey Lepikhov edited this page Dec 22, 2022
·
7 revisions
-
aqo.mode - defines how AQO works with incoming queries. Possible modes:
DISABLED
,CONTROLLED
,LEARN
,INTELLIGENT
andFROZEN
. -
aqo.show_hash - (deprecated) hash value computed by query tree schematic which have a sense of a class of queries. Starting from PostgreSQL 14 AQO uses native queryid as a query class on purpose of interconnection with another extensions, such as
pg_stat_statements
. So, QueryId can be taken from 'Query Identifier' field in EXPLAIN ANALYZE of a query. - aqo.show_details - adds some details into EXPLAIN of a query, such as prediction or feature subspace hash. Also, shows some additional on screen information related to AQO specifics.
- aqo.join_threshold - ignore queries which embodies lesser number of joins.
- aqo.learn_statement_timeout - AQO will use current state of a plan tree to improve future predictions if query is interrupted with statement timeout.
-
aqo.force_collect_stat - allow AQO to gather statistics on query executions even in
DISABLED
mode. Although AQO doesn't make any predictions, some additional overhead will be added.
AQO adds into postgres catalog several additional functions.
- aqo_cleanup() - remove data related to a query classes which [partly] linked with removed relations. Returns a number of removed feature spaces (classes) and feature subspaces.
- aqo_reset() - remove learning data from the AQO storage.
- aqo_enable_class(queryid)
- aqo_disable_class(queryid)
- aqo_drop_class(queryid) - remove all data from the AQO storage related to the query class.
- aqo_queries_update() - for specific queryid allow to manually change some class settings: feature space ID, learn or not AQO on this class, use AQO for cardinality predictions of queries, included in this class, use autotuning or not.
-
aqo_cardinality_error(controlled) - show cardinality error for each known query class. If
controlled == true
, show the error of last execution under control of AQO. Withcontrolled == false
returns average cardinality error among all logged executions made without control of AQO. -
aqo_execution_time(controlled) - show execution time for each known query class. Semantics of
controlled
parameter see in description of aqo_cardinality_error routine.
- aqo_data()
- aqo_queries()
- aqo_query_stat()
- aqo_query_texts()