华为云用户手册

  • gs_recent_barrier_buffer_info(start_time text, end_time text) 描述:根据用户输入的时间范围,进行相应的barrier信息查询,获取time_stamp、 CS N、LSN和standard_time。 返回值类型:records 说明:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限。输入参数start_time和end_time采用“年-月-日 时间”格式,其中时间采用clock格式。查询最大时间跨度为1天,超出跨度约束,根据查询起始时间将结束时间自动转换为极限边界进行查询。例如: gaussdb=# SELECT * FROM gs_recent_barrier_buffer_info('2024-01-15 23:27:50', '2024-01-15 23:28:00'); timestamp | lsn | csn | standard_time ------------+-------------------+----------+--------------------- 1705332470 | 00000000/15FFBBA0 | 41020421 | 2024-01-15 23:27:50 1705332471 | 00000000/15FFBDF0 | 41020422 | 2024-01-15 23:27:51 1705332472 | 00000000/15FFC058 | 41020423 | 2024-01-15 23:27:52 1705332472 | 00000000/15FFC0F8 | 41020424 | 2024-01-15 23:27:52 1705332473 | 00000000/15FFC348 | 41020425 | 2024-01-15 23:27:53 1705332474 | 00000000/15FFC598 | 41020426 | 2024-01-15 23:27:54 1705332475 | 00000000/15FFC638 | 41020427 | 2024-01-15 23:27:55 1705332476 | 00000000/15FFC888 | 41020428 | 2024-01-15 23:27:56 1705332476 | 00000000/15FFDC80 | 41020433 | 2024-01-15 23:27:56 1705332477 | 00000000/15FFDD20 | 41020434 | 2024-01-15 23:27:57 1705332478 | 00000000/15FFDF70 | 41020435 | 2024-01-15 23:27:58 1705332479 | 00000000/15FFE1D8 | 41020436 | 2024-01-15 23:27:59 1705332480 | 00000000/15FFE278 | 41020437 | 2024-01-15 23:28:00 1705332480 | 00000000/15FFE4C8 | 41020438 | 2024-01-15 23:28:00 (14 rows)
  • gs_show_obs_media_files(slot_name cstring, src cstring, offset int32, limit int32) 描述:根据用户输入的归档槽(slot_name)和OBS目录地址(src),查询OBS文件列表。 返回值类型:records 说明:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限。Offset为查询结果偏移,limit为输出最大行数,查询src下所有文件。例如: gaussdb=# SELECT gs_show_obs_media_files('ssh','dn1/pg_xlog',0, 5); gs_show_obs_media_files --------------------------------------------------------------------------------------------- (wstdist_ssh/archive/dn1/pg_xlog/000000010000000000000007_00_01_00000004_00000002_00000000) (wstdist_ssh/archive/dn1/pg_xlog/000000010000000000000007_00_01_00000103_00000003_00000000) (wstdist_ssh/archive/dn1/pg_xlog/000000010000000000000007_01_01_00000004_00000002_00000000) (wstdist_ssh/archive/dn1/pg_xlog/000000010000000000000007_01_01_00000103_00000003_00000000) (wstdist_ssh/archive/dn1/pg_xlog/000000010000000000000007_02_01_00000004_00000002_00000000) (5 rows)
  • gs_download_obs_media_file(slot_name cstring, src cstring, dest cstring) 描述:根据用户输入的归档槽(slot_name)、下载原地址(src)和本地目标地址(dest),下载OBS文件。 返回值类型:void 说明:调用该函数的用户需要具有SYSADMIN权限或具有OPRADMIN权限。下载目录仅允许为$GAUSS LOG 目录。例如: gaussdb=# SELECT * FROM gs_download_obs_media_file('ssh','dn1/pg_xlog/000000010000000000000019_02_01_00000000_00000000_00000003','/data/gauss/log/stwang/test'); gs_download_obs_media_file ------------------------------ (1 row)
  • pg_last_xact_replay_timestamp() 描述:获取最后一个事务在恢复时重放的时间戳。这是为在主节点上生成事务提交或终止WAL记录的时间。如果在恢复时没有事务重放,则这个函数返回NULL。如果恢复仍在进行,则事务日志将持续递增。如果恢复已经完成,则将保持在恢复期间最后接收WAL记录的值。如果服务器无需恢复就已正常启动,则这个函数返回NULL。 返回值类型:timestamp with time zone
  • diskann_probe_ncandidates 参数说明:指定利用gsdiskann索引检索向量时的候选集合大小。多租场景下,该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:1 ~ 32768 默认值:128。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议: 推荐使用默认值,建议在使用中通过实验获得最优的参数配置。 diskann_probe_ncandidates参数可以对于个别使用gsdiskann索引的查询进行设置和生效,建议只在会话中用set进行设置,不建议使用gs_guc进行全局设置。 设置不当的风险与影响:该参数设置过大会导致查询性能下降;设置过小会导致召回率不足。
  • gsivfflat_probes 参数说明:指定利用gsivfflat索引检索向量时待搜索的倒排列表的数量,超过gsivfflat索引的倒排列表总数时执行全表搜索。gsivfflat索引的倒排列表总数由创建索引时参数ivf_nlist指定。多租场景下,该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:1 ~ 32768 默认值:5。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐设置为索引创建时参数ivf_nlist取值的3%。建议在使用中通过实验获得最优的参数配置。 设置不当的风险与影响:该参数设置越大,搜索时间越长,但结果越准确。
  • gsivfflat_secondary_probes 参数说明:指定利用gsivfflat索引检索向量时待搜索的二级倒排列表的数量,超过二级倒排列表总数时执行全表搜索。二级倒排列表总数由创建索引时参数ivf_nlist2指定。多租场景下,该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:1 ~ 32768 默认值:5。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐设置为索引创建时参数ivf_nlist2取值的1/4~1/2之间。建议在使用中通过实验获得最优的参数配置。 设置不当的风险与影响:该参数设置越大,搜索时间越长,但结果越准确。 gsivfflat_secondary_probes效果和gsivfflat_probes相同,只有向量索引为双层索引时生效,可以有效加速查询速度。建议在使用中通过实验获得最优的参数配置。
  • enable_vectordb 参数说明:设置是否允许创建向量索引,是否允许对向量索引增加、修改和查询。向量数据库详细功能请参见《向量数据库开发指南》手册中的“使用向量数据库”章节。 参数类型:布尔型 参数单位:无 取值范围: on:表示允许。 off:表示不允许。 默认值:off 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:当不允许用户使用向量索引等向量数据库功能时,请设置为off,否则请设置为on。 设置不当的风险与影响:参数取值决定了用户能否使用向量数据库的功能,设置错误会导致用户使用数据库功能范围错误。
  • maintenance_work_mem 参数说明:指定在维护性操作中使用的最大的内存量。该参数可在PDB级别设置。 参数类型:整型 参数单位:kB 取值范围:1024 ~ 2147483647 默认值:65536(即64MB)。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。例如,不带单位取值1024,表示maintenance_work_mem为1024kB;带单位取值1MB,表示maintenance_work_mem为1MB。取值如果要带单位,必须为kB、MB、GB。 设置建议:参数取值一定要大于向量索引构建时对数据进行采样所需的内存。对于gsivfflat索引,采样所需内存估算为max(nlist, nlist2) * dim * 0.2kB。对于gsdiskann索引,开启pq时,采样所需内存为dim * 80kB。 设置不当的风险与影响:该参数设置过小,会导致索引无法正常创建,其他需要较大内存的业务也会失败。
  • bm25_ncandidates 参数说明:指定使用BM25索引做相似文档排序召回检索时所需准备排名靠前的文档数量,用于加速带有WHERE过滤条件的相似文档检索。多租场景下,该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:0 ~ 65535 默认值:128。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:根据检索语句过滤条件和LIMIT返回数量设置,大概计算为LIMIT召回数量 / 文档结果满足过滤条件几率。 设置不当的风险与影响:数值过大或者过小会使BM25索引检索时延变长,严重时可能使时延增加3-4倍。
  • datalength(any) 描述:计算一个指定的数据需要的字节数(不考虑数据的管理空间和数据压缩,数据类型转换等情况)。 返回值类型:int 备注:datalength用于计算某个独立数据值的空间。 示例: gaussdb=# SELECT datalength(1); datalength ------------ 4 (1 row) 目前支持的数据类型及计算方式见下表: 数据类型 存储空间 数值类型 整数类型 TINYINT 1 SMALLINT 2 INTEGER 4 BINARY_INTEGER 4 BIGINT 8 任意精度型 DECIMAL 每4位十进制数占两个字节,小数点前后数字分别计算。 NUMERIC 每4位十进制数占两个字节,小数点前后数字分别计算。 NUMBER 每4位十进制数占两个字节,小数点前后数字分别计算。 序列整型 SMALLSERIAL 2 SERIAL 4 BIGSERIAL 8 LARGESERIAL 每4位十进制数占两个字节,小数点前后数字分别计算。 浮点类型 FLOAT4 4 DOUBLE PRECISION 8 FLOAT8 8 BINARY_DOUBLE 8 FLOAT[(p)] 每4位十进制数占两个字节,小数点前后数字分别计算。 DEC[(p[,s])] 每4位十进制数占两个字节,小数点前后数字分别计算。 INTEGER[(p[,s])] 每4位十进制数占两个字节,小数点前后数字分别计算。 布尔类型 布尔类型 BOOLEAN 1 字符类型 字符类型 CHAR n CHAR(n) n CHARACTER(n) n NCHAR(n) n VARCHAR(n) n CHARACTER 字符实际字节数。 VARYING(n) 字符实际字节数。 VARCHAR2(n) 字符实际字节数。 NVARCHAR(n) 字符实际字节数。 NVARCHAR2(n) 字符实际字节数。 TEXT 字符实际字节数。 CLOB 字符实际字节数。 时间类型 时间类型 DATE 8 TIME 8 TIMEZ 12 TIMESTAMP 8 TIMESTAMPZ 8 SMALLDATETIME 8 INTERVAL DAY TO SECOND 16 INTERVAL 16 RELTIME 4 ABSTIME 4 TINTERVAL 12
  • get_db_source_datasize() 描述:估算当前数据库非压缩态的数据总容量。 返回值类型:bigint 备注:调用该函数前需要做analyze。 示例: 1 2 3 4 5 6 7 gaussdb=# analyze; ANALYZE gaussdb=# SELECT get_db_source_datasize(); get_db_source_datasize ------------------------ 35384925667 (1 row)
  • pg_database_size(name) 描述:指定名称的数据库使用的磁盘空间。 返回值类型:bigint 备注:pg_database_size接受一个数据库的OID或者名称,然后返回该对象使用的全部磁盘空间。 示例: 1 2 3 4 5 gaussdb=# SELECT pg_database_size('testdb'); pg_database_size ------------------ 51590112 (1 row) pg_database_size(oid/name)函数的查询耗时与该oid/name所对应数据库中的对象文件数目相关,基本呈线性关系。如需进行耗时评估,可参考以下步骤: 由于耗时与软硬件环境有关,因此需要以某个库(所选择库的对象文件数目不宜过多)的测试结果为基准。根据查询耗时和库中对象文件数目,计算出单个对象文件的耗时database_size_t。 使用select oid,* from pg_database where datname = 'database';查询获取需要查询库的OID,在表空间base和pg_tblspc目录下统计该OID目录下的所有文件数目database_obj_num。如果该目录中包含子目录,则需要进入查看对象文件数目,依次类推;使用ls | wc -l查询目录下文件数目。 根据基准测试结果中的单文件耗时database_size_t和数据库下所有对象文件数目database_obj_num计算预估总耗时,总耗时 = database_size_t * database_obj_num。如果预估时延过长,需考虑调整执行超时阈值,避免出现不必要的告警。
  • width_bucket(op numeric, b1 numeric, b2 numeric, count int) 描述:返回一个桶,这个桶是在一个有count个桶,上界为b1下界为b2的等深柱图中operand将被赋予的桶。 返回值类型:int 示例: 1 2 3 4 5 gaussdb=# SELECT width_bucket(5.35, 0.024, 10.06, 5); width_bucket -------------- 3 (1 row)
  • width_bucket(op dp, b1 dp, b2 dp, count int) 描述:返回一个桶,这个桶是在一个有count个桶,上界为b1下界为b2的等深柱图中operand将被赋予的桶。 返回值类型:int 示例: 1 2 3 4 5 gaussdb=# SELECT width_bucket(5.35, 0.024, 10.06, 5); width_bucket -------------- 3 (1 row)
  • remainder(x,y) 描述:x/y的余数,如果y是0,则报错。 返回值类型:与输入相同(float4、float8或者numeric类型) 示例: 1 2 3 4 5 6 7 8 gaussdb=# SELECT remainder(11,4); remainder ---------- -1 (1 row) gaussdb=# SELECT remainder(9,0); ERROR: division by zero CONTEXT: referenced column: remainder 此函数在A兼容模式数据库中且参数a_format_version值为10c和a_format_dev_version值为s2的情况下有效。
  • sqrt(x) 描述:平方根。 返回值类型:dp or numeric,不考虑隐式类型转换的情况下与输入相同。 示例: 1 2 3 4 5 gaussdb=# SELECT sqrt(2.0); sqrt ------------------- 1.414213562373095 (1 row) 此函数在GUC参数gs_format_behavior_compat_options值为'sqrt_karatsuba'时会使用Karatsuba sqrt平方根算法计算,否则使用牛顿迭代算法计算。Karatsuba sqrt平方根算法的性能更快,在极少数场景下精度和牛顿迭代算法有差别。
  • sinh(x) 描述:双曲正弦。 返回值类型:dp or numeric,不考虑隐式类型转换的情况下与输入相同。 示例: 1 2 3 4 5 gaussdb=# SELECT sinh(4); sinh ------------------ 27.2899171971277 (1 row) 此函数在A兼容模式数据库中且参数a_format_version值为10c和a_format_dev_version值为s2的情况下有效。
  • tanh(x) 描述:双曲正切。 返回值类型:与输入相同(double precision或者numeric类型)。 示例: 1 2 3 4 5 gaussdb=# SELECT tanh(0.1); tanh ------------------------------------------ 0.0996679946249558171183050836783521835389 (1 row) 此函数在A兼容模式数据库中且参数a_format_version值为10c和a_format_dev_version值为s2的情况下有效。
  • trunc(v numeric, s int) 描述:截断为s位小数。 返回值类型:numeric 示例: 1 2 3 4 5 gaussdb=# SELECT trunc(42.4382, 2); trunc ------- 42.43 (1 row) A兼容模式下,参数a_format_version值为10c和a_format_dev_version值为s1时,参数s若入参为小数则不会被四舍五入,而是被截断。
  • round(v numeric, s int) 描述:保留小数点后s位,s后一位进行四舍五入。 返回值类型:numeric 示例: 1 2 3 4 5 gaussdb=# SELECT round(42.4382, 2); round ------- 42.44 (1 row) 控制参数s输入为小数时:在A兼容模式数据库中且参数a_format_version值为10c和a_format_dev_version值为s1的情况下s截断为整数,否则s四舍五入为整数。 在参数a_format_version值为10c和a_format_dev_version值为s1的情况下,round函数支持round(timestamp, text)重载,在以(text, text)或(text, '')为入参调用round函数时会优先选择round(timestamp, text)。
  • power(a double precision, b double precision) 描述:a的b次幂。 返回值类型:double precision 示例: 1 2 3 4 5 gaussdb=# SELECT power(9.0, 3.0); power ---------------------- 729.0000000000000000 (1 row)
  • round(x) 描述:离输入参数最近的整数。 返回值类型:与输入相同(double precision或者numeric类型)。 示例: 1 2 3 4 5 6 7 8 9 10 11 gaussdb=# SELECT round(42.4); round ------- 42 (1 row) gaussdb=# SELECT round(42.6); round ------- 43 (1 row) float/double类型的输出结果可能会出现-0(trunc、ceil等函数同样会出现此种情形。在A兼容模式数据库中且参数a_format_version值为10c和a_format_dev_version值为s1的情况下结果为0),例如: 1 2 3 4 5 gaussdb=# SELECT round(-0.2::float8); round ------- -0 (1 row)
  • numeric(in) 描述:将传入参数转换为numeric类型值并返回。支持的入参类型包括:bigint、boolean、double precision、int16、integer、money、real、smallint。 返回值类型:numeric 示例: 1 2 3 4 5 6 7 8 9 10 11 gaussdb=# SELECT "numeric"('789'); numeric --------- 789 (1 row) gaussdb=# SELECT"numeric"(99.9); numeric --------- 99.9 (1 row)
  • multiply(x double precision or text, y double precision or text) 描述:x和y的乘积。 返回值类型:double precision 示例: 1 2 3 4 5 6 7 8 9 10 gaussdb=# SELECT multiply(9.0, '3.0'); multiply ------------------- 27 (1 row) gaussdb=# SELECT multiply('9.0', 3.0); multiply ------------------- 27 (1 row)
  • mod(x,y) 描述:x/y的余数(模)。如果x是0,则返回0。 返回值类型:在(text, int)入参时返回numeric类型,其余入参时,返回值类型与参数类型相同。 示例: 1 2 3 4 5 gaussdb=# SELECT mod(9,4); mod ----- 1 (1 row) 1 2 3 4 5 gaussdb=# SELECT mod(9,0); mod ----- 9 (1 row) 此函数在A兼容模式数据库下且在参数a_format_version值为10c和a_format_dev_version值为s6的情况下,mod函数支持mod(text, int)重载,在以(text, int)为入参类型调用mod函数时,会优先选择mod(text, int)。 1 2 3 4 5 6 7 8 9 gaussdb=# SET a_format_version='10c'; SET gaussdb=# SET a_format_dev_version='s6'; SET gaussdb=# SELECT mod('170141183460469231731687303715884105728', 7); mod ----- 2 (1 row)
  • float8(in) 描述:将传入参数转换为float8类型值并返回。支持的入参类型包括:bigint、int16、integer、numeric、real、smallint、text。 返回值类型:float8 示例: 1 2 3 4 5 6 7 8 9 10 11 gaussdb=# SELECT float8('789'); float8 -------- 789 (1 row) gaussdb=# SELECT float8(99.9); float8 -------- 99.9 (1 row)
  • rand([seed]) 描述:可以无入参,也可以接受一个bigint类型的seed入参。返回0到1之间的随机数,如果指定seed,则返回随机数种子seed的随机值。 参数:bigint类型,指定一个随机数种子。 返回值类型:double 示例: 1 2 3 4 5 6 7 8 9 10 11 b_compatible_db=# SELECT rand(); rand ------------------ .327476012520492 (1 row) b_compatible_db=# SELECT rand(12321); rand ------------------ .326073104515672 (1 row) 该函数在数据库参数sql_compatibility = 'B'时生效。返回值会省略后置0。
  • int16(in) 描述:将传入参数转换为int16类型值并返回。支持的入参类型包括:bigint、boolean、double precision、integer、numeric、oid、real、smallint、tinyint。 返回值类型:int16 示例: 1 2 3 4 5 6 7 8 9 10 11 gaussdb=# SELECT int16('789'); int16 -------- 789 (1 row) gaussdb=# SELECT int16(99.9); int16 -------- 100 (1 row)
  • int4(in) 描述:将传入参数转换为int4类型值并返回。 支持的入参类型包括bit、boolean、char、double precision、int16、numeric、real、smallint、text。 返回值类型:int4 示例: 1 2 3 4 5 6 7 8 9 10 gaussdb=# SELECT int4('789'); int4 ------ 789 (1 row) gaussdb=# SELECT int4(99.9); int4 ------ 100 (1 row)
共100000条
提示

您即将访问非华为云网站,请注意账号财产安全