[转帖]2. 扩展插件概述

扩展,插件,概述 · 浏览次数 : 0

小编点评

KingbaseES开发了大量的扩展包,这些扩展包可以分为以下几类: **1. 数据操作扩展包** * dbms_ddl:用于创建、删除、修改数据库表。 * dbms_output:用于将文本行写入缓冲区,供以后提取和显示的功能。 * dbms_utility:提供一些具有通用功能的子程序。 * dbms_session:实现对session中内容的操作。 **2. 数据分析扩展包** * kdb_database_link:用于访问外部数据库对象。 * lo:包含ltree和lquery类型的实现,为树状结构组织的数据提供索引和查询。 **3. 安全扩展包** * sys_anon:初始化内置的超级用户权限。 * sys_audlog:实时检查共享缓冲区工具sys_bulkload快速加载数据的命令行工具。 * sys_prewarm:将关系数据载入到操作系统缓冲区或者KingbaseES缓冲区,实现数据预热。 * sys_spacequota:针对表空间限额的操作。 * sys_stat_statements:追踪所有 SQL 语句的执行统计信息。 **4. 数据审计扩展包** * sysencrypt:实现数据加解密。 * sysmac:强制访问控制。 **5. 其他扩展包** * repmgr:实现对超级用户权限进行限制。 * sepapower:三权分立。 * sys_recovery:从死元组中读取数据。 * tcn:创建一个触发器函数,用于监听所附着表的任意改变. * xml2:提供XPath查询和XSLT功能函数. * zhparser:用于全文搜索的中文分词插件. * walminer:从WAL日志解析REDO/UNDO SQL语句的功能.

正文

https://help.kingbase.com.cn/v8.6.7.12/development/sql-plsql/ref-extended-plug-in/plug-in.html

 

KingbaseES开发了大量的扩展包。如:dbms_output,dbms_ddl,dbms_metadata 等。在日常使用过程中,如果功能在KingbaseES中没有默认支持,可以在操作系统中进入 $KINGBASE_HOME/ Server/share/extension目录,搜索扩展sql文件来确认是否已有相应的扩展。也可以查询当前版本支持的扩展插件:

select * from sys_available_extensions;

执行 \dx 查询当前已安装的扩展插件:

test=# \dx
                                 已安装扩展列表
        名称         | 版本 |  架构模式  |         描述
---------------------+------+------------+------------------------------------------------
 dbms_ddl            | 1.0  | sys        | DBMS_DDL system package
 dbms_output         | 1.0  | sys        | DBMS_OUTPUT system package
 dbms_utility        | 1.0  | sys        | dbms_utility extension package
 kdb_license         | 1.0  | pg_catalog | kdb_license extension
 kdb_oracle_datatype | 1.0  | sys        | kdb_oracle_datatype extension
 kdb_schedule        | 1.0  | sys        | A KingbaseES job scheduler

表 plug-TABLE 列出了KingbaseES所提供的扩展插件。后文为每个扩展插件的详细文档。

插件名称

用途

amcheck

让用户能验证关系逻辑结构的一致性

auth_delay

登录失败延时

auto_bmr

支持自动块修复

auto_explain

自动记录SQL语句的执行计划,并写入到KingbaseES日志文件中

backtrace

程序崩溃时获取并打印输出堆栈信息

backup_pri

允许物理备份sys_basebackup连接到目标数据库,执行物理备份操作

bloom

提供了bloom过滤器索引

btree_gin

提供了B树等价行为的GIN操作符类

btree_gist

提供了B树等价行为的GIST操作符类

citext

支持大小写不敏感的字符串类型citext及其相关操作

cstore_fdw

实现列式存储及压缩

cube

实现了一种数据类型cube来表示多维立方体

dblink

支持在一个数据库会话中连接到其他Kingbase数据库

dbms_ddl

创建一个PL/SQL包体、函数、过程。

dbms_lob

对CLOB/BLOB大对象就行的操作

dbms_metadata

创建特定类型对象的DDL语句

dbms_obfuscation_toolkit

提供DES或3DES算法进行数据的加解密

dbms_output

提供将文本行写入缓冲区、供以后提取和显示的功能

dbms_random

提供一个随机数或者字符的生成器

dbms_session

实现对session中内容的操作

dbms_sql

定义了一系列的过程和函数,专门用于动态SQL语句的操作

dbms_utility

提供一些具有通用功能的子程序

dict_int

支持了对于数字的text类型搜索字典

dict_xsyn

提供一个具有附加全文搜索功能的字典模板

earthdistance

支持了与地球表面相关的数据操作

file_fdw

用来访问存储在外部文件中的数据

fix_security_hole

禁止通过copy执行操作系统命令

ftutilx

流版式文件内容抽取

fuzzystrmatch

提供了两个字符串之间的编辑距离的相关函数

hstore

支持hstore类型

http

KingbaseES的http客户端,允许在数据库内检索网页

identity_pwdexp

管理和检查用户口令的有效期

intagg

提供了一个整数聚合器和一个枚举器,作为内置函数的兼容性封装器提供

intarray

为操作整数的null-free数组提供一些有用的函数和操作符。

isn

为国际产品编号标准提供数据类型

kbcrypto

提供如rc4,sm3,sm4等加密函数的访问接口

kbrowlocks

提供了一个函数来显示指定表的行级锁信息

kbstattuple

提供了多种函数来获得关系中元组的统计信息

kdb_database_link

用于访问外部数据库对象

kdb_date_function

兼容mysql的日期相关的函数

kdb_exists_expand

优化EXISTS子链接,生成执行效率更高的执行计划

kdb_flashback

支持flashback 技术

kdb_license

初始化内置 ,基本类型

kdb_oracle_datatype

初始化内置 ,兼容Oracle数据类型

kdb_oracle_datatype_nls

初始化内置 ,兼容Oracle日期date数据类型

kdb_orafce

实现对oracle一些函数和包的兼容

kdb_protect

用于保护database、schema、table等逻辑对象不被删除

kdb_raw

实现对raw数据类型的操作

kdb_resource_group

实现资源组功能

kdb_schedule

基于后台进程来实现自动作业功能

kdb_tinyint

初始化内置 ,基本类型,支持tinyint类型

kdb_utils_function

工具函数,包括xml,字符操作等

kdb_xmltype

Oracle兼容XMLTYPE类型和相关的操作函数

kingbase_fdw

用来访问存储在外部KingbaseES服务器中的数据

kingbase_version

可以查询KingbaseES数据库的构建版本

ktrack

块级别增量备份引擎

lo

提供了触发器在引用了lo数据的行被修改或删除时自动调用lo_unlink

ltree

包含ltree和lquery类型的实现,为树状结构组织的数据提供索引和查询

memstat

在本地和所有后端中添加有关内存上下文的统计报告

mysql_fdw

用来访问存储在外部Mysql数据库中的数据

oracle_fdw

用来访问存储在外部Oracle数据库中的数据

owa_util

支持OWA_UTIL系统包中的WHO_CALLED_ME过程

pageinspect

提供函数可以查看数据库页面的内容

passwordcheck

管理和检查用户口令的复杂度

passwordhistory

管理用户口令历史,检查用户更新的口令

pg_partman

分区管理

pldbgapi

PG语法调试

plsql_pldbgapi

oracle语法调试

plsql_plprofiler

收集分析器(性能)数据以提高性能或确定PL/SQL应用程序的代码覆盖率

repmgr

详见《KingbaseES主备和读写分离集群使用手册》 repmgr

restricted_dba

实现对超级用户权限进行限制

roledisable

在本地库内使角色失效,使失效的角色再生效

rum

RUM索引类型

security_utils

支持安全方面的功能

seg

为程序提供seg数据类型的使用

sepapower

三权分立

src_restrict

来源限制

sslinfo

来提供当前客户端提供的 SSL 证书的有关信息

sso_update_user

进一步划分安全员和管理员权限,满足特殊场景三权分立需求

sys_anon

初始化内置 ,数据脱敏。参见 数据脱敏

sys_audlog

账户异常登录锁定和账户登录信息显示

sys_buffercache

实时检查共享缓冲区工具

sys_bulkload

快速加载数据的命令行工具

sys_freespacemap

提供了查看FSM页面的方法

sys_jieba

用于全文搜索的中文分词插件

sys_ksh

历史会话分析工具

sys_kwr

负载信息记录和保存,并提供相关的性能报告

sys_prewarm

将关系数据载入到操作系统缓冲区或者KingbaseES缓冲区,实现数据预热

sys_qualstats

保存 where 和 join 子句中的谓词统计信息,生成索引建议

sys_recovery

从死元组中读取数据

sys_spacequota

针对表空间限额的操作

sys_squeeze

无锁清理空闲表空间的工具

sys_stat_statements

追踪所有 SQL 语句的执行统计信息

sys_trgm

提供基于 trigram 匹配的字母数字文本相似度的函数和操作符

sys_visibility

提供了查看表的VM页数据和页级别可见性的函数

sysaudit

初始化内置 ,审计。参见 数据库审计

sysencrypt

实现数据加解密

sysmac

初始化内置 ,强制访问控制。 参见 管理强制访问控制

sysprivilege

实现对数据库系统ANY权限的扩展

sysreuse_residual_data

资源申请和释放时清除介质上的残留信息以达到客体重用的要求

tablefunc

返回多行集合的函数

tcn

提供了一个触发器函数,用于监听所附着表的任意改变

tds_fdw

用于连接使用TDS协议的数据库如Sybase,Microsoft SQL Server

tsm_system_rows

提供了表采样方法SYSTEM_ROWS

tsm_system_time

提供了表采样方法SYSTEM_TIME

unaccent

提供了一个能从词位中移除重音的文本搜索字典

utl_file

补充了一些对于文件操作的函数

uuid-ossp

uuid生成工具

walminer

提供从WAL日志解析REDO/UNDO SQL语句的功能

xml2

提供XPath查询和XSLT功能函数

zhparser

用于全文搜索的中文分词插件

一个扩展包通常需要一个包含创建该扩展的对象的SQL命令的脚本文件以及一个指定扩展本身的一些基本属性的控制文件。如果扩展包括C代码,通常还有一个C代码编译而成的共享库文件。控制文件和脚本默认被放在数据库的安装目录下的 Server/share/extension 目录中,C 编译的共享库文件则放在 Server/lib 中。

与[转帖]2. 扩展插件概述相似的内容:

[转帖]2. 扩展插件概述

https://help.kingbase.com.cn/v8.6.7.12/development/sql-plsql/ref-extended-plug-in/plug-in.html KingbaseES开发了大量的扩展包。如:dbms_output,dbms_ddl,dbms_metadat

[转帖]9.2 TiFlash 架构与原理

9.2 TiFlash 架构与原理 相比于行存,TiFlash 根据强 Schema 按列式存储结构化数据,借助 ClickHouse 的向量化计算引擎,带来读取和计算双重性能优势。相较于普通列存,TiFlash 则具有实时更新、分布式自动扩展、SI(Snapshot Isolation)隔离级别读

[转帖]寻找一种易于理解的一致性算法(扩展版)

https://github.com/hanxt/raft-zh_cn/blob/master/raft-zh_cn.md 寻找一种易于理解的一致性算法(扩展版) 摘要 1 介绍 2 复制状态机 3 Paxos 算法的问题 4 为了可理解性的设计 5 Raft 一致性算法 5.1 Raft 基础 5

[转帖]图解第四代英特尔至强可扩展处理器家族

https://aijishu.com/a/1060000000379987 今天,代号Sapphire Rapids(SPR)的第四代英特尔至强(Intel Xeon)可扩展处理器,终于来了。 从三代Lake变到Rapids,有继承,有发展。这里的继承是指2D Mesh(网格)架构,发展是指Chi

[转帖]对扩展开放,对修改关闭

https://www.cnblogs.com/light-train-union/p/12674000.html 1、轻易不要去修改别人的方法 可能很多地方调用 有的方法抛出去后 被其他外部的调用(你都不知道 被谁调用了) 做兼容 做扩展 2、自己的设计 保证好的扩展性 对扩展开放,对修改关闭 经

[转帖]金仓数据库KWR使用说明

金仓数据库KWR使用说明 1.KWR性能报告介绍2.部署KWR性能报告功能2.1.修改配置文件2.2.使配置文件中参数生效2.3.创建KWR扩展 3.使用KWR快照功能3.1.创建KWR快照3.2.管理快照3.2.1.快照查询3.2.2.手动创建快照3.2.3.自动快照3.2.4.清理快照3.2.5

[转帖]openGauss 3.0 单节点安装部署

https://cdn.modb.pro/db/568455 openGauss来源于PostgreSQL 9.2.4pg使用c实现,gs使用c++实现一个实例多个库 单机HA不是支持一主一备,提供高可靠和读扩展,备机最多8套。 主备部署模块说明:OM运维管理模块:提供日常运维、配置管理接口,工具在

[转帖]openGauss 3.0 单节点安装部署

https://cdn.modb.pro/db/568455 openGauss来源于PostgreSQL 9.2.4pg使用c实现,gs使用c++实现一个实例多个库 单机HA不是支持一主一备,提供高可靠和读扩展,备机最多8套。 主备部署模块说明:OM运维管理模块:提供日常运维、配置管理接口,工具在

[转帖]玄铁C910微架构学习(2)——指令高速缓存

https://www.zhihu.com/people/kent-35-40/posts ​ 目录 收起 一、指令提取单元简介 二、指令高速缓存源码的文件结构 三、指令高速缓存的组成 data_array tag_array predecd_array 四、指令高速缓存的回填 五、扩展的指令缓存操

[转帖]openGauss 3.0 单节点安装部署

https://www.modb.pro/db/568455?utm_source=index_ori openGauss来源于PostgreSQL 9.2.4pg使用c实现,gs使用c++实现一个实例多个库 单机HA不是支持一主一备,提供高可靠和读扩展,备机最多8套。 主备部署模块说明:OM运维管