支持的数据库扩展

下表列出了 AlloyDB Omni 15.7.0 支持的所有扩展程序。

所有这些扩展程序都适用于每个 AlloyDB Omni 实例。如需启用其中任何一项,请参阅启用扩展程序

扩展程序 说明
amcheck 提供用于验证关系结构的逻辑一致性的函数,使 pg_amcheck 应用能够检查损坏情况。
anon 可帮助您隐藏或替换个人身份信息 (PII) 或商业敏感数据。
auto_explain 启用慢速语句执行计划的自动日志记录功能,以便进行问题排查等。它提供了一种自动执行 EXPLAIN 命令功能的方法。
autoinc 提供用于自动递增字段的函数。此触发器会将序列的下一个值存储到整数字段中。
bloom 提供基于布隆过滤器的索引访问方法。
btree_gin 提供实现 B 树等效行为的 GIN 运算符类示例。
btree_gist 提供实现 B 树等效行为的 GiST 索引运算符类。
citext 提供不区分大小写的字符串类型 citext
cube 实现 cube 数据类型,表示多维数据集。
dblink 提供从数据库会话连接到 PostgreSQL 数据库的功能。
dict_int 用于全文搜索的插件式字典模板,该模板可控制对整数进行的索引操作。
earthdistance 提供两种计算地球表面大圆距离的方法。
fuzzystrmatch 提供多种用于确定字符串之间的相似性和差异的函数。
google_columnar_engine 提供 AlloyDB Omni 的列式引擎功能,该功能可非常高效地处理 HTAP(混合事务分析处理)和 OLAP(联机分析处理)工作负载。
google_db_advisor 提供 AlloyDB Omni 的索引顾问功能,可推荐索引以加快查询处理速度。
google_ml_integration 提供用于访问 Vertex AI 预测端点以在 SQL 中获取预测结果的函数。
hstore 实现 hstore 数据类型,用于在单一 PostgreSQL 值内存储键值对集合。
hypopg 支持假设索引。
insert_username 提供用于将当前用户的名称存储到文本字段中的函数。您可以使用此函数来跟踪上次修改数据库表中行的用户。
intagg 提供整数聚合器和枚举器。
intarray 提供一组函数和运算符,用于操控不含 null 的整数数组,并对其执行索引搜索操作。
ip4r 提供 IPv4/v6 地址的数据类型、地址范围以及索引支持。
isn 提供用于某些国际产品编号标准的数据类型。
lo 支持管理大对象(也称为 LO 或 BLOB)。
ltree 实现 ltree 数据类型,用于表示采用分层树状结构存储的数据的标签。
moddatetime 提供用于将当前时间存储到 timestamp 字段中的函数。您可以使用此函数来跟踪上次修改数据库表中的行的时间。
pageinspect 在较低级别检查数据库页面的内容。
pg_auto_failover 监控和管理 PostgreSQL 集群的自动故障切换。它经过优化,简单且准确,支持 PostgreSQL 10 及更高版本。
pg_bigm 在 PostgreSQL 中使用二元语法索引提供全文搜索功能,以加快全文搜索速度。
pg_buffercache 提供一种实时检查共享缓冲区缓存所发生情况的方法。
pg_cron 为 PostgreSQL 提供基于 Cron 的作业调度器,该调度器会作为扩展程序在数据库内运行。它使用与常规 cron 相同的语法,但可让您直接从数据库调度 PostgreSQL 命令。
pg_freespacemap 检查可用空间映射 (FSM)。
pg_hint_plan 可帮助您使用提示来改进 PostgreSQL 执行计划,提示是 SQL 注释中的简单说明。
pg_ivm 为 PostgreSQL 提供增量视图维护 (IVM) 功能。
pg_partman 让您能够创建和管理基于时间的基于序列的表分区集。
pg_prewarm 提供一种将关系数据加载到操作系统缓冲区缓存或 PostgreSQL 缓冲区缓存的便捷方式。
pg_proctab 让您可以将 pg_top 与 AlloyDB Omni 搭配使用,并从操作系统进程表中生成报告。
pg_repack 可让您消除表和索引中的臃肿。(可选)可让您执行在线集群(按集群索引对表排序)。
pg_similarity 提供对 PostgreSQL 上的相似度查询的支持。
pg_squeeze 从表中移除未使用的空间,并可视需要使用索引对表中的记录或行(元组)进行排序。
pg_stat_statements 提供一种跟踪所执行所有 SQL 语句的执行统计信息的方法。
pg_trgm 提供多种函数和运算符(用于根据三元语法匹配来确定字母数字文本的相似性),以及索引运算符类(支持快速搜索类似字符串)。
pg_visibility 提供了一种方法来检查表的可见性映射 (VM) 和页面级可见性信息。
pg_wait_sampling 提供收集等待事件的采样统计信息的功能。
pgaudit 使用 PostgreSQL 提供的标准日志记录功能提供详细的会话和对象审核日志记录。请注意,如果启用了 logging_collector 参数,AlloyDB Omni 中的 pgaudit 将无法正常运行。
pgcrypto 为 PostgreSQL 提供加密函数。
pgfincore 一组函数,用于管理来自 PostgreSQL 的操作系统磁盘缓存内存中的页面。
pglogical

使用发布/订阅模型为 PostgreSQL 提供逻辑流式复制。

AlloyDB Omni 包含 pglogical 扩展程序使用的多个插件

pgrowlocks 为指定表提供行锁定信息。
pgstattuple 提供各种函数来获取元组级统计信息。
pgtap 为 PostgreSQL 提供使用 PL/pgSQL 和 PL/SQL 编写的单元测试框架。
pgtt 为数据库添加了对全局临时表的支持。
vector 标准 pgvector PostgreSQL 扩展程序已针对 AlloyDB Omni 进行了自定义,并称为 vector。它支持将生成的嵌入存储在向量列中、生成针对向量优化的索引,以及搜索向量嵌入。
plpgsql 一种可加载的过程语言,用于创建函数、过程和触发器。您还可以使用此语言直接执行 DO 代码块中的代码。
plproxy 这是一个过程语言处理程序,其具有可选的分片功能并且允许在 PostgreSQL 数据库之间调用远程过程。
plv8 提供可启用 JavaScript 的过程语言。
postgres_fdw 提供外部数据封装容器,您可以使用该封装容器访问存储在外部 PostgreSQL 服务器中的数据。
postgresql-hll 引入了一种新的数据类型 hll,它是一个 HyperLogLog 数据结构。
prefix 提供前缀匹配以及索引支持。
refint 包含用于检查外键限制条件、引用表和被引用表的函数。
sslinfo 提供当前客户端在连接到实例时所提供的 SSL 证书的相关信息。
tablefunc 提供各种可返回表(多行)的函数。
tcn 提供触发器函数,以通知监听器数据库表内容的更改。
temporal_tables 提供对时态表的支持。在数据库中,时态表会记录行有效的时间段。
tsm_system_rows 提供 SYSTEM_ROWS 表采样方法,该方法可用于 SELECT 命令的 TABLESAMPLE 子句。
tsm_system_time 提供 SYSTEM_TIME 表采样方法,该方法可用于 SELECT 命令的 TABLESAMPLE 子句。
unaccent

这是一个文本搜索字典,用于从词素中移除重音符号和其他变音符号。

如需将此扩展程序与 与 PostgreSQL 15 兼容的数据库搭配使用,请在 创建数据库时指定 libcLOCALE_PROVIDER。 AlloyDB Omni 不支持将此扩展程序与兼容 PostgreSQL 15 的数据库和默认的 ICU 语言区域提供程序搭配使用。

uuid-ossp 提供用于使用若干标准算法之一生成通用唯一标识符 (UUID) 的函数。

逻辑解码插件

除了本页面上方列出的扩展程序之外,AlloyDB Omni 还支持 pglogical 扩展程序用于设置该扩展程序流式输出格式的以下插件。

插件 说明
[decoderbufs] 将流式数据的格式设置为 [protocol buffers]。
[pgoutput] PostgreSQL 的内置逻辑解码插件。
[test-decoding] 将流式传输的数据格式化为文本格式。
[wal2json] 将流式传输的数据格式化为 JSON。

PostGIS 扩展程序

支持以下 PostGIS 扩展程序,但 AlloyDB Omni 中不包含这些扩展程序:

如需了解详情,请参阅为 AlloyDB Omni 安装 PostGIS

Orafce 扩展程序

AlloyDB Omni 不包含 Orafce 扩展,但您可以按照为 AlloyDB Omni 安装 Orafce中的说明将其手动添加到现有的 AlloyDB Omni 安装中,以便从 Oracle 数据库提供其他函数和运算符。

启用扩展程序

如需启用扩展程序,请按以下步骤操作:

  1. 在 AlloyDB Omni 集群的主实例中连接到数据库

  2. 运行 CREATE EXTENSION 命令。例如,连接到主实例后,您可以使用 psql 启用 citext 扩展程序:

    mydatabase=> CREATE EXTENSION IF NOT EXISTS citext;
    
  3. 如果您要启用 pg_stat_statements 扩展程序,请运行以下命令:

    # ALTER SYSTEM SET shared_preload_libraries=<whatever you want>,pg_stat_statements;
    
  4. 重启数据库,确保您可以使用该扩展程序。