文档

Extension扩展

更新时间:

Hologres中支持加载扩展(extension)以实现更丰富的功能,本文为您介绍Hologres中支持的extension扩展以及如何加载、查看、卸载extension。

使用限制

  • 一个数据库只能在一个Schema下加载一次extension。例如在某数据库的默认Schema下加载了extension,则此数据库下其他的Schema不能再加载extension。

  • 可以将extension加载在全局空间pg_catalog系统Schema下,默认该数据库的所有Schema都能访问该extension的功能;如果不指定Schema,则会默认加载在public Schema下。

  • 账号具有Superuser权限才能加载、卸载extension。

  • 目前仅支持加载系统内置extension,不支持加载自定义及外部extension。

Extension扩展

Extension名称

适用场景

相关文档

使用说明

spm、slpm

开启权限模型调用函数的开关。

简单权限模型的使用基于Schema级别的简单权限模型的使用

hive_compatible

使用get_json_object()函数。

GET_JSON_OBJECT

hologres_fdw

Hologres跨库查询。

跨库查询(Beta)

仅独享实例支持,共享集群不支持。

dlf_fdw

通过DLF读取OSS数据。

OSS数据湖加速

proxima

使用Proxima进行向量计算。

Proxima向量计算

仅独享实例支持,共享集群不支持。

flow_analysis

使用明细圈人、漏斗分析函数。

漏斗分析函数明细圈人函数

roaringbitmap

使用Roaring Bitmap函数。

Roaring Bitmap函数

仅独享实例支持,共享集群不支持。

hg_binlog

消费Hologres Binlog。

通过JDBC消费Hologres Binlog

仅独享实例支持,共享集群不支持。

foreign_table_exposer

针对特定BI工具优化访问外表。

Power BI

postgis

使用空间函数。

PostGIS地理信息分析

仅独享实例支持,共享集群不支持。

clickhouse

兼容ClickHouse迁移函数。

迁移ClickHouse至Hologres

仅独享实例支持,共享集群不支持。

加载Extension

  • 语法示例

    加载Extension的SQL命令如下。

    -- 需Superuser权限执行
    CREATE extension IF NOT EXISTS <extension_name> SCHEMA <schema_name>;

    参数

    说明

    extension_name

    需要加载的extension名称,Hologres支持的部分extension参见本文上述列表。

    schema_name

    加载extension所在的schema名称。如果不指定schema,则会默认在public下加载extension,建议加载在pg_catalog下,数据库级别可用。

  • 使用示例

    在pg_catalog下加载postgis扩展示例如下。

    CREATE extension if not exists postgis schema pg_catalog;

查看当前数据库已加载Extension

通过如下SQL命令可以查看当前数据库下已加载的extension,包括系统默认加载的extension。

SELECT
    e.extname AS "Name",
    e.extversion AS "Version",
    n.nspname AS "Schema",
    c.description AS "Description"
FROM
    pg_catalog.pg_extension e
    LEFT JOIN pg_catalog.pg_namespace n ON n.oid = e.extnamespace
    LEFT JOIN pg_catalog.pg_description c ON c.objoid = e.oid
        AND c.classoid = 'pg_catalog.pg_extension'::pg_catalog.regclass
    ORDER BY        1;

卸载Extension

卸载extension的SQL命令如下。

-- 需Superuser权限执行
DROP extension <extension_name>;

参数

说明

extension_name

需要卸载的extension名称,Hologres支持的部分extension参见本文上述列表。

  • 本页导读 (1)
文档反馈