Snowflake Postgres Extensions

Extensions allow for expanded functionality within Postgres, without requiring a new version of Postgres to be released. Extensions can enable new functionality including data types and functions.

You can see a list of all available extensions by querying your database:

SELECT * FROM pg_available_extensions

You can see all extensions that are already enabled by executing:

SELECT * FROM pg_extension;

or \dx in psql.

Extensions are enabled by the admin user by running:

CREATE EXTENSION extensionname;

Procedural language - PL/PgSQL

While also a category of extension, procedural languages allow you to write custom functions to be executed within your database. We currently support PL/PgSQL.

Current catalog of extensions

ExtensionType of extensionSummaryCommand to create
Address StandardizerFunctionsUsed to parse an address into constituent elementsCREATE EXTENSION address_standardizer;
Address Standardizer (US)FunctionsData for standardizing US addressesCREATE EXTENSION address_standardizer_data_us;
AmcheckFunctionsFunctions for verifying relation integrityCREATE EXTENSION amcheck;
AuditFunctionsAudit user actionsCREATE EXTENSION pgaudit;
Auto explainLoggingAutomatically log execution plans of slow statementsSee auto_explain
Auto IncrementFunctionsProvides function for storing the next value of a sequence in an integer fieldCREATE EXTENSION autoinc;
BloomIndex typesProvides a bloom filter index typeCREATE EXTENSION bloom;
Btree GINIndex typesSupport for indexing common data types in GINCREATE EXTENSION btree_gin;
Btree GISTIndex typesSupport for indexing common data types in GiSTCREATE EXTENSION btree_gist;
Buffer CacheViewsExamine the shared buffer cacheCREATE EXTENSION pg_buffercache;
Case insensitive textData typeCase insensitive text data typeCREATE EXTENSION citext;
CronFunctionsCreate scheduled tasksCREATE EXTENSION pg_cron;
CryptoFunctionsFunctions for encrypting data inside columnsCREATE EXTENSION pgcrypto;
CubeData typeData type for multi-dimensional cubesCREATE EXTENSION cube;
DDL ExtractorFunctionsDDL eXtractor functionsCREATE EXTENSION ddlx;
dict-intDictionariesFull text search dictionary template for integersCREATE EXTENSION dict_int;
dict-xsynDictionariesFull text search dictionary template for extended synonym processingCREATE EXTENSION dict_xsyn;
Earth DistanceFunctionsFunctions that assist with computing the distance between points.CREATE EXTENSION earthdistance;
Free Space MapFunctionsExamine the free space map (FSM)CREATE EXTENSION pg_freespacemap;
Fuzzy String MatchFunctionsFunctions for comparing similarity between stringsCREATE EXTENSION fuzzystrmatch;
H3FunctionsH3 bindings for PostgresCREATE EXTENSION h3;
H3 PostGISGeospatial utilitiesH3 bindings for PostGIS spatial typesCREATE EXTENSION h3_postgis;
Hint planFunctionsAdjust PostgreSQL execution plans using “hints” in SQL comments (more info)CREATE EXTENSION pg_hint_plan;
HLLFunctionsHyperLogLog data structure for approximating distinct value countsCREATE EXTENSION hll;
HstoreData typeKey value data typeCREATE EXTENSION hstore;
HTTP ClientFunctionsHTTP client for PostgreSQL, allows web page retrieval inside the database.CREATE EXTENSION http;
HypopgFunctionsHypothetical indexesCREATE EXTENSION hypopg;
IncrementalFunctionsIncremental batch processingCREATE EXTENSION pg_incremental;
Insert UsernameFunctionsWill place the current Postgres username in a text fieldCREATE EXTENSION insert_username;
Integer AggregatorFunctionsInteger aggregator and enumeratorCREATE EXTENSION intagg;
Integer ArrayFunctionsSorting and manipulation of integer arraysCREATE EXTENSION intarray;
ISNData typeData type for product numbering (including UPC, ISBN, ISSN)CREATE EXTENSION isn;
IVMFunctionsIncremental View MaintenanceCREATE EXTENSION pg_ivm;
Large ObjectData typeSpecialized large object data typeCREATE EXTENSION lo;
Label TreeData typeData type for tree-like structuresCREATE EXTENSION ltree;
LogicalFunctionsHelper functions for PostgreSQL Logical ReplicationCREATE EXTENSION pglogical;
Modification TimeFunctionsWill place the current timestamp into a timestamp fieldCREATE EXTENSION moddatetime;
OrafceFunctionsEmulate Oracle functionsCREATE EXTENSION orafce;
Page InspectFunctionsInspect the contents of database pages at a low levelCREATE EXTENSION pageinspect;
Row LockingFunctionsShow row-level locking informationCREATE EXTENSION pgrowlocks;
PartmanFunctionsCreate and manage both time-based and serial-based table partition setsCREATE EXTENSION pg_partman;
pg_lakeIceberg and data lake storageSupport for tables backed by object storage formats like Iceberg, Parquet, and ORCSee Moving data between Snowflake Postgres and Snowflake
PostGISGeospatial utilitiesPostGIS geometry, geography, and raster spatial types and functionsSee PostGIS
PostGIS RasterGeospatial utilitiesPostGIS raster types and functionsCREATE EXTENSION postgis_raster;
PostGIS SFCGALGeospatial utilitiesPostGIS SFCGAL functionsCREATE EXTENSION postgis_sfcgal;
PostGIS TopologyGeospatial utilitiesPostGIS topology spatial types and functionsCREATE EXTENSION postgis_topology;
Postgres FDWForeign Data WrapperForeign data wrapper for connecting to other Postgres databasesCREATE EXTENSION postgres_fdw;
PrewarmFunctionsUtilities to prewarm your cache, helpful for standby failoverCREATE EXTENSION pg_prewarm;
ProctabFunctionsAccess operating system process tables from PostgreSQLCREATE EXTENSION pg_proctab;
RefintFunctionsFunctions for referential integrityCREATE EXTENSION refint;
RepackFunctionsRemove bloat from tables and indexes (See also pg_squeeze)CREATE EXTENSION pg_repack;
RoutingGeospatial utilitiesRouting functionalityCREATE EXTENSION pgrouting;
SemverData typeData type for the Semantic Version format with support for btree and hash indexingCREATE EXTENSION semver;
SurgeryFunctionsCorrective actions on corruption or damaged dataCREATE EXTENSION pg_surgery;
SegData typeData type for representing floating point intervals or segmentsCREATE EXTENSION seg;
SSL InfoFunctionsAbility to query SSL information based on the current connectionCREATE EXTENSION sslinfo;
Stat statementsViewsTrack planning and execution statistics of all SQL statements executedCREATE EXTENSION pg_stat_statements;
Stat TupleFunctionsShow tuple-level statisticsCREATE EXTENSION pgstattuple;
SqueezeFunctionsRemove bloat from tables and indexes. A modern alternative to pg_repack. See pg_squeeze docs.CREATE EXTENSION pg_squeeze;
Table functionsFunctionsFunctions for cubing and rollups of tablesCREATE EXTENSION tablefunc;
Table sampling (system rows)FunctionsFunctions to provide sampling of system tablesCREATE EXTENSION tsm_system_rows;
Table sampling (system time)FunctionsFunctions to provide sampling of system timeCREATE EXTENSION tsm_system_time;
Trigger change notificationsFunctionsFunctions for listening to changes on tablesCREATE EXTENSION tcn;
TrigramFunctionsMatching and similarity of stringsCREATE EXTENSION pg_trgm;
UnaccentDictionariesText search dictionary that removes accentsCREATE EXTENSION unaccent;
VisibilityFunctionsExamine the visibility map (VM) and page-level visibility infoCREATE EXTENSION pg_visibility;
VectorFunctionsVector (pgvector) data type and ivfflat access methodCREATE EXTENSION vector;
ULIDFunctionsGenerate universally unique lexicographically sortable identifiers (ULIDs)CREATE EXTENSION pgx_ulid;
uuid-osspFunctionsGenerate universally unique identifiers (UUIDs)CREATE EXTENSION uuid-ossp;
uuidv7FunctionsGenerate version 7 universally unique identifiers (UUIDs)CREATE EXTENSION pg_uuidv7;
WAL inspectFunctionsInspect contents of WALCREATE EXTENSION pg_walinspect;
xml2FunctionsXPath querying and XSLTCREATE EXTENSION xml2;