The Odyssey compute engine for AnalyticDB for PostgreSQL is independently developed by Alibaba Cloud and transparent to users to improve sophisticated computing performance. Compared with the native engine, Odyssey provides two-fold performance when the 22 SQL queries of the TPC-H benchmark are executed on 1 GB, 100 GB, 1 TB, and 10 TB of data.

Enable and disable Odyssey

You can use the enable_odyssey parameter of global user configuration (GUC) to enable and disable Odyssey. To enable Odyssey, set the parameter to on, and SELECT statements will be processed by Odyssey. To enable the native engine, set the parameter to off. The default value is off. You can enable Odyssey for sessions, databases, and clusters. When a session is ended, Odyssey is automatically disabled. When the parameter is set to on, Odyssey is immediately enabled for a database and will be enabled for a cluster after you restart the cluster. You can execute the following SQL statements to view the Odyssey status and modify the status for different levels.
--- View whether Odyssey is enabled:
show enable_odyssey;
--- Disable Odyssey for a session:
set enable_odyssey =off;
--- Enable Odyssey for a session:
set enable_odyssey = on;
--- Disable Odyssey for a database:
alter database ${DBNAME} set enable_odyssey=off;
--- Enable Odyssey for a database:
alter database ${DBNAME} set enable_odyssey=on;
Note We recommend that you enable Odyssey for databases and sessions. To enable Odyssey for your clusters, contact the Alibaba Cloud administrator.

Supported data types and operators

Odyssey supports the following data types:

  • INT2, INT4, and INT8

Odyssey supports the following operators:

  • =, <, <=, >, >=, <> or !=, BETWEEN, IS NOT NULL, IS NULL, and LIKE
  • Logical operators: AND, OR, and NOT


  • We recommend that you use the ORCA query optimizer.
  • Odyssey is only supported in AnalyticDB for PostgreSQL 6.0 and later versions.