Skip to main content

Extensions on Aiven for PostgreSQL®

PostgreSQL® extensions allow you to extend the functionality by adding more capabilities to your Aiven for PostgreSQL.


Some extensions:

  • Have dependencies and need to be created in a predetermined order.
  • Require resetting the client connection before they are fully available.

To list the extensions and their details, such as extension version numbers, run select * from pg_available_extensions in your Aiven for PostgreSQL server.


Not all extensions listed in pg_available_extensions can be installed. See Superuser-only extensions for more information.

Data types

  • citext. Data type for case-insensitive character strings.
  • cube. Data type for multidimensional cubes.
  • hll. Type for storing hyperloglog data. PG11 and newer
  • hstore. Data type for storing sets of (key, value) pairs.
  • isn. Data types for international product numbering standards.
  • ltree. Data type for hierarchical tree-like structures.
  • pgvector. Type for vector similarity search. PG13 and newer
  • seg. Data type for representing line segments or floating-point intervals.
  • timescaledb. Enables scalable inserts and complex queries for time-series data.
  • unit. SI units extension.
  • uuid-ossp. Generate universally unique identifiers (UUIDs).

Search and text handling

  • bloom. Bloom access method - signature file based index.
  • btree_gin. Support for indexing common data types in GIN.
  • btree_gist. Support for indexing common data types in GiST.
  • dict_int. Text search dictionary template for integers.
  • fuzzystrmatch. Determine similarities and distance between strings.
  • pg_similarity. Support similarity queries. PG13 and newer
  • pg_trgm. Text similarity measurement and index searching based on trigrams.
  • pgcrypto. Cryptographic functions.
  • rum. RUM index access method.
  • unaccent. Text search dictionary that removes accents.


  • tcn. Triggered change notifications.

Geographical features

Procedural language

  • plperl. PL/Perl procedural language.
  • plpgsql. PL/pgSQL procedural language.


  • dblink. Connect to other PostgreSQL databases from within a database.
  • postgres_fdw. Foreign-data wrapper for remote PostgreSQL servers.


  • aiven_extras. This extension is meant for use in environments where you want non-superusers to be able to use certain database features.
  • bool_plperl. Transform between bool and plperl. PG13 and newer
  • intagg. Integer aggregator and enumerator (obsolete).
  • intarray. Functions, operators, and index support for 1-D arrays of integers.
  • jsonb_plperl. Transform between jsonb and plperl.
  • lo. Large Object maintenance.
  • pageinspect. Inspect the contents of database pages at a low level.
  • pg_buffercache. Examine the shared buffer cache.
  • pg_cron. Job scheduler for PostgreSQL.
  • pg_partman. Extension to manage partitioned tables by time or ID.
  • pg_prewarm. Prewarm relation data. PG11 and newer
  • pg_prometheus. Prometheus metrics for PostgreSQL. PG12 and earlier
  • pg_repack. Reorganize tables in PostgreSQL databases with minimal locks.
  • pg_stat_statements. Track planning and execution statistics of all SQL statements executed.
  • pgrowlocks. Show row-level locking information.
  • pgstattuple. Show tuple-level statistics.
  • sslinfo. Information about SSL certificates.
  • tablefunc. Functions that manipulate whole tables, including crosstab.
  • timetravel. Functions for implementing time travel. PG11 and earlier
  • tsm_system_rows. TABLESAMPLE method which accepts number of rows as a limit.
  • tsm_system_time. TABLESAMPLE method which accepts time in milliseconds as a limit.

Superuser-only extensions

The following extensions can only be installed by superusers, and are not generally available.

  • amcheck. Functions for verifying relation integrity.
  • autoinc. Functions for auto-incrementing fields. PG13 and newer
  • dict_xsyn. Text search dictionary template for extended synonym processing.
  • file_fdw. Foreign-data wrapper for flat file access.
  • hstore_plperl. Transform between hstore and plperl.
  • insert_username. Functions for tracking who changed a table.
  • moddatetime. Functions for tracking last modification time.
  • old_snapshot. Utilities in support of old_snapshot_threshold. PG14 only
  • pageinspect. Inspect the contents of database pages at a low level.
  • pg_freespacemap. Examine the free space map (FSM).
  • pg_surgery. Extension to perform surgery on a damaged relation. PG14 only
  • pg_visibility. Examine the visibility map (VM) and page-level visibility info.
  • refint. Functions for implementing referential integrity (obsolete).