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.

important

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 the following command in your Aiven for PostgreSQL server:

SELECT *
FROM pg_available_extensions
note

Superuser-only and untrusted extensions listed in pg_available_extensions cannot be installed with a few exceptions.

  • To list all superuser-only and untrusted extensions, run

    SELECT name, version
    FROM pg_available_extension_versions
    WHERE superuser AND NOT trusted
  • To list superuser-only and untrusted extensions available for installation, run

    SELECT *
    FROM pg_available_extension_versions
    WHERE name = ANY(string_to_array(current_setting('extwlist.extensions'), ','));

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.

Auditing

  • tcn. Triggered change notifications.

Geographical features

  • address_standardizer. Used to parse an address into constituent elements. Generally used to support geocoding address normalization step.
  • address_standardizer_data_us. Address standardizer US dataset example.
  • earthdistance. Calculate great-circle distances on the surface of the Earth.
  • h3. PostgreSQL bindings for H3, a hierarchical hexagonal geospatial indexing system.
  • h3_postgis. H3 PostGIS integration.
  • pgrouting. Extends the PostGIS/PostgreSQL geospatial database to provide geospatial routing and other network analysis functionality.
  • postgis. PostGIS geometry and geography spatial types and functions.
  • postgis_legacy. Legacy functions for PostGIS.
  • postgis_raster. PostGIS raster types and functions.
  • postgis_sfcgal. PostGIS SFCGAL functions.
  • postgis_tiger_geocoder. PostGIS tiger geocoder and reverse geocoder.
  • postgis_topology. PostGIS topology spatial types and functions.

Procedural language

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

Connectivity

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

Utilities

  • 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.