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;
Apache AGEFunctionsGraph database functionality with openCypher query supportCREATE EXTENSION age;
Apache Data SketchesFunctionsApproximate algorithms including distinct counting, quantiles, and frequent itemsCREATE EXTENSION datasketches;
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 pg_lake
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;