Aiven for PostgreSQL is a multi-cloud managed Postgres service with a broad pre-approved extension allow-list — enable pgvector, postgis, timescaledb and more with a single CREATE EXTENSION command.
Enables scalable inserts and complex queries for time-series data
Enables scalable inserts and complex queries for time-series data
vector data type and ivfflat and hnsw access methods
Job scheduler for PostgreSQL
Advanced indexing for vector data with DiskANN
Extension to manage partitioned tables by time or ID
Extension to manage partitioned tables by time or ID
Reorganize tables in PostgreSQL databases with minimal locks
Reorganize tables in PostgreSQL databases with minimal locks
type for storing hyperloglog data
IPv4/v6 and IPv4/v6 range index type for PostgreSQL
connect to other PostgreSQL databases from within a database
connect to other PostgreSQL databases from within a database
calculate great-circle distances on the surface of the Earth
determine similarities and distance between strings
functions, operators, and index support for 1-D arrays of integers
data types for international product numbering standards
inspect the contents of database pages at a low level
track planning and execution statistics of all SQL statements executed
track planning and execution statistics of all SQL statements executed
text similarity measurement and index searching based on trigrams
text similarity measurement and index searching based on trigrams
foreign-data wrapper for remote PostgreSQL servers
data type for representing line segments or floating-point intervals
functions that manipulate whole tables, including crosstab
functions that manipulate whole tables, including crosstab
TABLESAMPLE method which accepts number of rows as a limit
TABLESAMPLE method which accepts time in milliseconds as a limit
TABLESAMPLE method which accepts time in milliseconds as a limit
generate universally unique identifiers (UUIDs)
Aiven manages extensions with plain SQL — no console toggle. Any database user can run CREATE EXTENSION, but only extensions on Aiven's pre-approved allow-list (enforced by the extwlist module) will install. A few extensions have extra steps, noted below.
Connect with psql (or any client) and run the standard extension commands. CASCADE pulls in any required dependencies.
-- Enable an extension (CASCADE installs dependencies too)
CREATE EXTENSION extension_name CASCADE;
-- Upgrade an installed extension to the latest available version
ALTER EXTENSION extension_name UPDATE;
-- Remove an extension
DROP EXTENSION extension_name;
-- List which extensions the allow-list permits on this service
SELECT * FROM pg_available_extension_versions
WHERE name = ANY(string_to_array(current_setting('extwlist.extensions'), ','));Some extensions need a specific connection or sequence. timescaledb installs with CASCADE; pg_cron must be created as the avnadmin user in the defaultdb database.
-- TimescaleDB (Apache edition — see Notable absences re: TSL features)
CREATE EXTENSION timescaledb CASCADE;
-- pg_cron: connect as avnadmin to the defaultdb database, then:
CREATE EXTENSION pg_cron;
-- grant usage so your application role can schedule jobs
GRANT USAGE ON SCHEMA cron TO your_app_role;These extensions ship enabled by default — no CREATE EXTENSION needed.
Proprietary extensions that exist only on Aiven for PostgreSQL, not part of the open-source PostgreSQL ecosystem.
Aiven's helper extension that lets non-superusers perform certain elevated database operations — notably logical-replication management (creating publications/subscriptions) — that would otherwise require a superuser Aiven does not grant.
DocsExtensions you might expect that aren't available on Aiven for PostgreSQL, with workarounds where they exist.
timescaledbWhy missing: timescaledb is available, but only the Apache 2.0 (open-source) edition. The advanced TSL-licensed features — continuous-aggregate helpers like time_bucket_gapfill and native compression — are blocked and fail with an error like "not supported under license ApacheOnly".
Alternative: For TSL features, self-host TimescaleDB or use Timescale Cloud. On Aiven, native Postgres partitioning plus pg_partman covers many time-series use cases.
plpythonuWhy missing: Untrusted procedural languages such as plpython / plpythonu are not supported — they can run arbitrary code on the host, which Aiven's managed, no-true-superuser model does not allow. Attempts to create them are refused.
Alternative: Use a trusted language (PL/pgSQL or PL/Perl) for in-database logic, or move untrusted Python work to your application tier.
postgisWhy missing: On PostgreSQL 18 the PostGIS family (along with pgrouting, hll, rum and pg_similarity) is not yet on Aiven's published per-version extension list — an ecosystem lag following the PG18 launch, not a permanent removal.
Alternative: Create the service on PostgreSQL 17, where the full PostGIS family is available, until Aiven publishes the PG18 set.
Aiven for PostgreSQL allows a series of pre-approved extensions — there is no facility to upload arbitrary or custom-compiled extensions. The allow-list is enforced by the extwlist module, and superuser-only or untrusted languages (for example plpythonu) are refused. If you need an extension that isn't on the list, request it through Aiven Ideas. For elevated operations that normally need a superuser, the bundled aiven_extras extension exposes a safe subset to non-superusers.
1bench is a modern GUI client for PostgreSQL — connect to your Aiven for PostgreSQL instance, install extensions, write queries, and inspect schemas without leaving the IDE.
Try 1bench for PostgreSQL