华为云用户手册

  • uncontrolled_memory_context 参数说明:启用检查内存上下文是否超过给定限制的功能时,设置不受此功能约束的内存上下文。仅适用于DEBUG版本。该参数可在PDB级别设置。 查询该参数时,会在参数值的最前面添加标题含义字符串“MmgrMemoryController white list:”。 参数类型:字符串 参数单位:无 取值范围:字符串 默认值:""。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
  • page_version_check 参数说明:基于页面版本信息,进行底层存储故障校验和页面漏置脏校验的功能总开关,page_version_check是一个三级开关。其中,底层存储故障校验功能是检测从底层存储读取的页面是否为正确版本,防止磁盘掉电等故障情况导致的页面版本信息丢失;页面漏置脏校验功能是检测被修改页面是否忘记置脏,它有一个单独开关page_missing_dirty_check进行控制。 参数类型:枚举类型 参数单位:无 取值范围: off:表示完全关闭底层存储故障校验和页面漏置脏校验的功能开关。 memory:表示打开纯内存态的页面版本校验功能(即底层存储故障校验和页面漏置脏校验),页面版本信息只缓存在内存当中,重启丢失。 persistence:表示打开持久态的页面版本校验功能(即底层存储故障校验和页面漏置脏校验),页面版本信息会持久化到文件中,重启不丢失。 默认值:persistence 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:根据不同机器规格,建议如下设置:off(4核CPU/16GB内存、4核CPU/32GB内存、8核CPU/64GB内存);persistence(16核CPU/128GB内存、32核CPU/256GB内存、60核CPU/480GB内存、64核CPU/512GB内存、72核CPU/576GB内存、80核CPU/640GB内存、96核CPU/768GB内存、96核CPU/1024GB内存、104核CPU/1024GB内存、128核CPU/1024GB内存、196核CPU/1536GB内存)。 设置不当的风险与影响:开关设置为memory及persistence时,对性能有一定影响,机器规格越小,影响越大(参考:16核CPU/128GB内存,TPCC模型影响7%左右)。在系统需要频繁重启的场景下,建议设置为persistence,能够确保页面版本信息不丢失,但会进一步影响性能。
  • page_missing_dirty_check 参数说明:页面漏置脏校验的功能开关,检测被修改页面是否忘记置脏。page_missing_dirty_check受控于page_version_check,如果page_version_check设置为off,则page_missing_dirty_check设置为on时也不生效。 参数类型:布尔型 参数单位:无 取值范围: on:表示进行页面漏置脏校验。 off:表示不进行页面漏置脏校验。 默认值:off 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:建议在测试场景中开启此开关,能够最大限度在非生产环境中排查出漏置脏代码BUG;在现网时默认关闭页面漏置脏,避免带来额外开销,进而影响性能。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
  • memorypool_size 参数说明:设置内存池大小。 参数类型:整型 参数单位:kB 取值范围:131072 ~ 1073741823 默认值:524288(即512MB) 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。例如,不带单位取值131072,表示memorypool_size为131072kB;带单位取值128MB,表示memorypool_size为128MB。取值如果要带单位,必须为kB、MB、GB。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
  • enable_memory_limit 参数说明:设置是否启用逻辑内存管理模块。多租数据库特性(enable_mtd)需要开启该参数。 由于存在固定开销,即shared_buffers和元数据(大约200MB),若max_process_memory减去固定开销小于2GB, GaussDB 会强制把enable_memory_limit设置为off。其中元数据是GaussDB内部使用的内存,和部分并发参数,如max_connections,thread_pool_attr,max_prepared_transactions等参数相关。 参数类型:布尔型 参数单位:无 取值范围: on:表示启用逻辑内存管理模块。 off:表示不启用逻辑内存管理模块。 默认值:on 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:当该值为off时,不对数据库使用的内存做限制,在大并发或者复杂查询时,使用内存过多,可能导致操作系统OOM问题。
  • max_process_memory 参数说明:设置一个数据库节点可用的最大物理内存。 参数类型:整型 参数单位:kB 取值范围:2097152 ~ 2147483647 默认值: 1400GB(196核CPU/1536G内存);900GB(128核CPU/1024G内存,104核CPU/1024G内存,96核CPU/1024G内存);680GB(96核CPU/768G内存);560GB(80核CPU/640G内存);450GB(64核CPU/512G内存);420GB(60核CPU/480G内存);200GB(32核CPU/256G内存);90GB(16核CPU/128G内存);40GB(8核CPU/64G内存);20GB(4核CPU/32G内存);10GB(4核CPU/16G内存) 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:该参数的目的是尽可能保证系统的可靠性,不会因数据库内存膨胀导致节点OOM。数据库节点上该参数值需要根据系统物理内存及单节点部署主数据库节点个数决定,建议计算公式如下:(物理内存大小 - vm.min_free_kbytes) * 0.7 / 节点个数。这个公式中提到vm.min_free_kbytes,其含义是预留操作系统内存供内核使用,通常用作操作系统内核中通信收发内存分配,至少为5%内存,即max_process_memory = 物理内存 * 0.665 / 节点个数。 设置不当的风险与影响:若该值设置不合理,比如大于服务器物理内存时,可能导致操作系统OOM问题。
  • enable_memory_context_control 参数说明:设置是否启用检查内存上下文是否超过给定限制的功能。仅适用于DEBUG版本。 参数类型:布尔型 参数单位:无 取值范围: on:表示启用最大内存上下文限制检查功能。 off:表示关闭最大内存上下文限制检查功能。 默认值:off 设置方式:该参数属于SIGHUP类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
  • memorypool_enable 参数说明:设置是否允许使用内存池。 参数类型:布尔型 参数单位:无 取值范围: on:表示允许使用内存池。 off:表示不允许使用内存池。 默认值:off 设置方式:该参数属于POSTMASTER类型参数,请参见表1中对应设置方法进行设置。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
  • enable_ilm 参数说明:控制是否开启数据生命周期管理-OLTP表压缩特性。 参数类型:布尔型 参数单位:无 取值范围: on:表示开启。 off:表示关闭。 默认值:off 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:该参数默认off,如果需要开启数据生命周期管理-OLTP表压缩特性,请联系华为工程师购买license后再设置为on。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
  • hll_default_log2m 参数说明:该参数可以指定hll数据结构桶的个数。桶的个数会影响hll计算distinct值的精度,桶的个数越多,误差越小。误差范围为:[-1.04/2log2m*1/2,+1.04/2log2m*1/2]。该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:10 ~ 16 默认值:14。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值,可以根据实际业务需要进行调整。 设置不当的风险与影响:设置过小可能无法达到所需的精度要求,而设置过大则可能导致资源浪费。
  • hll_default_log2explicit 参数说明:该参数可以用来设置从Explicit模式到Sparse模式的默认阈值大小。该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:0 ~ 12 0:表示跳过Explicit模式。 1 ~ 12:表示在基数到达2hll_default_log2explicit时切换模式。 默认值:10。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值,可以根据实际业务需要进行调整。 设置不当的风险与影响:设置过小可能无法达到所需的精度要求,而设置过大则可能导致资源浪费。
  • hll_default_log2sparse 参数说明:该参数可以用来设置从Sparse模式到Full模式的默认阈值大小。该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:0 ~ 14 0:表示跳过Explicit模式。 1 ~ 14:表示在基数到达2hll_default_log2sparse时切换模式。 默认值:12。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值,可以根据实际业务需要进行调整。 设置不当的风险与影响:设置过小可能无法达到所需的精度要求,而设置过大则可能导致资源浪费。
  • hll_duplicate_check 参数说明:该参数可以用来指定是否默认开启duplicatecheck。 参数类型:整型 参数单位:无 取值范围:0 ~ 1 0:表示默认关闭。 1:表示默认开启。 默认值:0 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:推荐使用默认值,可以根据实际业务需要进行调整。 设置不当的风险与影响:开启可能会消耗更多资源来进行duplicate check,但会提高distinct值计算的准确性。
  • 如何查看某张表创建时间? 答:在系统视图PG_TABLES里created字段的取值为表的真实创建时间。 --创建表。 gaussdb=# CREATE TABLE test(id int, name varchar(10)); --查询test表创建时间。 gaussdb=# SELECT tablename,created FROM pg_tables WHERE tablename = 'test'; tablename | created -----------+------------------------------- test | 2024-01-12 14:50:59.611988+08 (1 row) 父主题: FAQ
  • 如何设置账号的有效期? 答:在数据库使用过程中,会创建一些用户对数据库进行相关操作。创建用户时,需要限制用户的操作期限(即有效开始时间和有效结束时间),具体的设置方法如下: 通过gsql连接数据库。 创建用户并制定用户的有效开始时间和有效结束时间。 gaussdb=# CREATE USER jack WITH PASSWORD '********' VALID BEGIN '2015-10-10 08:00:00' VALID UNTIL '2016-10-10 08:00:00'; CREATE ROLE 当显示CREATE ROLE信息时表示创建用户成功。 当用户已不在有效使用期内,重新设定账号的有效期,包括有效开始时间和有效结束时间。 gaussdb=# ALTER USER jack WITH VALID BEGIN '2016-11-10 08:00:00' VALID UNTIL '2017-11-10 08:00:00'; ALTER ROLE 当显示ALTER ROLE信息时表示重新设定成功。 父主题: FAQ
  • SPM计划管理函数 GS_SPM_EVOLUTE_PLAN(sql_hash, plan_hash) 描述:GS_SPM_EVOLUTE_PLAN属于DBE_SQL_UTIL schema,是SPM特性用于计划演进的接口函数。只要该计划基线相关的表存在,就可以对该计划基线进行演进。 参数:如表1所示。 表1 GS_SPM_EVOLUTE_PLAN入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - evolute_status OUT boolean 演进行为是否正常完成:t表示正常;异常会报错。 t/f 返回值类型:boolean 示例: gaussdb=# SELECT * FROM dbe_sql_util.gs_spm_evolute_plan(107760189, 2284373089); evolute_status ---------------- t (1 row) GS_SPM_SET_PLAN_STATUS(sql_hash, plan_hash, plan_status) 描述:GS_SPM_SET_PLAN_STATUS属于DBE_SQL_UTIL schema,它是SPM特性用于修改baseline状态的接口函数。 参数:如表2所示。 表2 GS_SPM_SET_PLAN_STATUS入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - plan_status IN text 计划的状态。 ACC:表示已经接受的计划。 UNACC:表示未接受的计划。 FIXED:一种特殊的ACC状态的计划,计划的匹配优先级高于ACC状态的计划。 execute_status OUT boolean 修改计划状态行为是否正常完成:t表示正常;异常会报错。 t/f 返回值类型:boolean 示例: gaussdb=# SELECT dbe_sql_util.gs_spm_set_plan_status(sql_hash, plan_hash, 'ACC') FROM gs_spm_sql_baseline where outline like '%BitmapScan%'; gs_spm_set_plan_status ------------------------ t (1 row) GS_SPM_DISPLAY_PLANS(sql_hash) 描述:GS_SPM_DISPLAY_PLANS属于DBE_SQL_UTIL schema,它是SPM特性用于查看单条SQL所有baseline的接口函数。 参数:如表3所示。 表3 GS_SPM_DISPLAY_PLANS入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL的唯一标识。 - sql_hash OUT bigint SQL文本的hash值。 - plan_hash OUT bigint SQL计划outline文本的hash值。 - outline OUT text 当前计划对应outline的所有Hint的组合字符串。 - cost OUT double 当前计划的代价。 - status OUT text 当前计划的状态。 ACC:表示已经接受的计划。 UNACC:表示未接受的计划。 FIXED:一种特殊的ACC状态的计划,计划的匹配优先级高于ACC状态的计划。 gplan OUT boolean 当前计划是否是gplan。t表示是gplan;异常会报错。 t/f 返回值类型:bigint, text, double, text, boolean 示例: select sql_hash, plan_hash, outline, status, gplan from dbe_sql_util.gs_spm_display_plans(107760189) order by status, outline; sql_hash | plan_hash | outline | status | gplan -----------+------------+------------------------------------------------+--------+------- 107760189 | 2519317082 | begin_outline_data +| ACC | f | | IndexScan(@"sel$1" tb_a@"sel$1" tb_a_idx_c1) +| | | | version("1.0.0") +| | | | end_outline_data | | 107760189 | 2686653876 | begin_outline_data +| UNACC | f | | BitmapScan(@"sel$1" tb_a@"sel$1" tb_a_idx_c1)+| | | | version("1.0.0") +| | | | end_outline_data | | 107760189 | 2284373089 | begin_outline_data +| UNACC | f | | TableScan(@"sel$1" tb_a@"sel$1") +| | | | version("1.0.0") +| | | | end_outline_data | | (3 rows) GS_SPM_RELOAD_PLAN(sql_hash,plan_hash) 描述:GS_SPM_RELOAD_PLAN属于DBE_SQL_UTIL schema,它是SPM特性用于加载baseline系统表中某baseline到SPM global cache中的接口函数。 参数:如表4所示。 表4 GS_SPM_RELOAD_PLAN入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - execute_status OUT boolean baseine的加载行为是否正常完成:t表示正常;异常会报错。 t/f 返回值类型:boolean 示例: SELECT dbe_sql_util.gs_spm_reload_plan(sql_hash, plan_hash) from gs_spm_sql_baseline where outline like '%IndexScan%'; gs_spm_reload_plan -------------------- t (1 row) GS_SPM_VALIDATE_PLAN(sql_hash, plan_hash) 描述:GS_SPM_VALIDATE_PLAN属于DBE_SQL_UTIL schema,它是SPM特性用于计划可用性验证的接口函数。 参数:如表5所示。 表5 GS_SPM_VALIDATE_PLAN入参和返回值列表 参数 类型 描 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - execute_status OUT boolean 被验证的计划是否可用: t:被验证的计划可用;f: 被验证的计划不可用 t/f 返回值类型:boolean 示例: SELECT dbe_sql_util.gs_spm_validate_plan(sql_hash, plan_hash) FROM gs_spm_sql_baseline WHERE outline LIKE '%IndexScan%'; gs_spm_validate_plan ---------------------- f (1 row) GS_SPM_DELETE_PLAN(sql_hash, plan_hash) 描述:GS_SPM_DELETE_PLAN属于DBE_SQL_UTIL schema,它是SPM特性用于计划删除baseline的接口函数。若该函数在执行期间异常中止,可能会导致gs_spm_baseline表中记录数超出GUC参数spm_plan_capture_max_plannum指定的数量。 参数:如表6所示。 表6 GS_SPM_DELETE_PLAN入参和返回值列表 参数 类型 描述 取值范围 sql_hash IN bigint SQL文本的hash值。 - plan_hash IN bigint SQL计划outline文本的hash值。 - execute_status OUT boolean 计划删除行为是否正常完成:t表示正常;异常会报错。 t/f 返回值类型:boolean 示例: SELECT dbe_sql_util.gs_spm_delete_plan(sql_hash, plan_hash) FROM gs_spm_sql_baseline WHERE outline LIKE '%IndexScan%'; gs_spm_delete_plan -------------------- t (1 row) 父主题: 函数和操作符
  • MY_PART_COL_STATIS TICS MY_PART_COL_STATISTI CS 视图显示当前用户拥有的表分区的列统计信息和直方图信息。所有用户可以访问。该视图同时存在于PG_CATA LOG 和SYS Schema下。 表1 MY_PART_COL_STATISTICS字段 名称 类型 描述 table_name character varying(128) 表名。 partition_name character varying(128) 表分区名称。 column_name character varying(4000) 列名。 num_distinct numeric 暂不支持,值为NULL。 low_value raw 暂不支持,值为NULL。 high_value raw 暂不支持,值为NULL。 density numeric 暂不支持,值为NULL。 num_nulls numeric 暂不支持,值为NULL。 num_buckets numeric 暂不支持,值为NULL。 sample_size numeric 暂不支持,值为NULL。 last_analyzed timestamp(0) without time zone 暂不支持,值为NULL。 global_stats character varying(3) 暂不支持,值为NULL。 user_stats character varying(3) 暂不支持,值为NULL。 notes character varying(63) 暂不支持,值为NULL。 avg_col_len numeric 暂不支持,值为NULL。 histogram character varying(15) 暂不支持,值为NULL。 schema character varying(64) 列所属的名称空间的名称。 父主题: 分区表
  • REPLICATION_STAT REPLICATION_STAT用于描述日志同步状态信息,如发起端发送日志位置、接收端接收日志位置等,如表1所示。多租场景下,non-PDB访问该视图时返回全部信息,PDB访问该视图时仅返回该PDB相关信息,当前不支持PDB级别的日志同步,因此实际会返回空列表。 表1 REPLICATION_STAT字段 名称 类型 描述 pid bigint 线程的PID。 usesysid oid 用户系统ID。 usename name 用户名。 application_name text 程序名称。 client_addr inet 客户端地址。 client_hostname text 客户端名。 client_port integer 客户端端口。 backend_start timestamp with time zone 程序启动时间。 state text 日志复制的状态: 追赶状态 一致的流状态 sender_sent_location text 发送端发送日志位置。 receiver_write_location text 接收端write日志位置。 receiver_flush_location text 接收端flush日志位置。 receiver_replay_location text 接收端replay日志位置。 sync_priority integer 同步复制的优先级(0表示异步)。 sync_state text 同步状态: 异步复制 同步复制 潜在同步者 dbid oid 数据库标识。 父主题: Utility
  • MTD_USER MTD_USER视图显示当前所有用户的信息,仅用于内部视图做表关联,不建议外部使用。 表1 MTD_USER字段 名称 类型 描述 dbid oid 数据库标识。 usename name 用户名。 usesysid oid 用户的ID。 usecreatedb boolean 用户是否可以创建数据库。 t(true):表示是。 f(false):表示否。 usesuper boolean 用户是否是拥有最高权限的初始系统管理员。 t(true):表示是。 f(false):表示否。 usecatupd boolean 用户是否可以直接更新系统表。只有usesysid=10的初始系统管理员拥有此权限。其他用户无法获得此权限。 t(true):表示是。 f(false):表示否。 userepl boolean 用户是否可以复制数据流。 t(true):表示是。 f(false):表示否。 passwd text 密文存储后的用户密码,始终为********。 valbegin timestamp with time zone 账户的有效开始时间;如果没有设置有效开始时间,则为NULL。 valuntil timestamp with time zone 账户的有效结束时间;如果没有设置有效结束时间,则为NULL。 respool name 用户所在的资源池。 parent oid 父用户OID。 spacelimit text 永久表存储空间限额,单位KB。 useconfig text 运行时配置项的默认值。参考PG_DB_ROLE_SETTING.setconfig。 nodegroup name 用户关联的逻辑数据库名称,如果该用户没有管理逻辑数据库,则该字段为空。 tempspacelimit text 临时表存储空间限额,单位KB。 spillspacelimit text 算子落盘空间限额,单位KB。 usemonitoradmin boolean 用户是否是监控管理员。 t(true):表示是。 f(false):表示否。 useoperatoradmin boolean 用户是否是运维管理员。 t(true):表示是。 f(false):表示否。 usepolicyadmin boolean 用户是否是安全策略管理员。 t(true):表示是。 f(false):表示否。 父主题: 多租数据库
  • GaussDB都有哪些通配符,如何使用? 答: GaussDB数据库 支持以下三种通配符: %:表示任意数量的字符,包括0个,用于LIKE和NOT LIKE语句中。 _:表示一个字符,用于LIKE和 NOT LIKE语句中。 *:表示任意数量字符,包括0个,在部分元命令中使用。 示例: --任意数量字符的通配符使用,查询tbl_test表中以col1字段以ab开头任意多个字符结尾的数据。 gaussdb=# SELECT * FROM tbl_test WHERE col1 LIKE 'ab%'; --一个字符的通配符使用,查询tbl_test表中col1字段以a开头b结尾中间任意单个字符串的数据。 gaussdb=# SELECT * FROM tbl_test WHERE col1 LIKE 'a_b'; --查询所有以tbl开头的表。 gaussdb=# \dt tbl* 父主题: FAQ
  • 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。 设置不当的风险与影响:该参数设置过小,会导致索引无法正常创建,其他需要较大内存的业务也会失败。
  • diskann_probe_ncandidates 参数说明:指定利用gsdiskann索引检索向量时的候选集合大小。多租场景下,该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:1 ~ 32768 默认值:128。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议: 推荐使用默认值,建议在使用中通过实验获得最优的参数配置。 diskann_probe_ncandidates参数可以对于个别使用gsdiskann索引的查询进行设置和生效,建议只在会话中用set进行设置,不建议使用gs_guc进行全局设置。 设置不当的风险与影响:该参数设置过大会导致查询性能下降;设置过小会导致召回率不足。
  • bm25_ncandidates 参数说明:指定使用BM25索引做相似文档排序召回检索时所需准备排名靠前的文档数量,用于加速带有WHERE过滤条件的相似文档检索。多租场景下,该参数可在PDB级别设置。 参数类型:整型 参数单位:无 取值范围:0 ~ 65535 默认值:128。在PDB场景内,若未设置该参数,则继承来自全局的设置。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。 设置建议:根据检索语句过滤条件和LIMIT返回数量设置,大概计算为LIMIT召回数量 / 文档结果满足过滤条件几率。 设置不当的风险与影响:数值过大或者过小会使BM25索引检索时延变长,严重时可能使时延增加3-4倍。
  • enable_vectordb 参数说明:设置是否允许创建向量索引,是否允许对向量索引增加、修改和查询。向量数据库详细功能请参见《向量数据库开发指南》手册中的“使用向量数据库”章节。 参数类型:布尔型 参数单位:无 取值范围: on:表示允许。 off:表示不允许。 默认值:off 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:当不允许用户使用向量索引等向量数据库功能时,请设置为off,否则请设置为on。 设置不当的风险与影响:参数取值决定了用户能否使用向量数据库的功能,设置错误会导致用户使用数据库功能范围错误。
  • 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_enhance_toast_table 参数说明:是否使用Enhanced Toast线外存储表。 参数类型:布尔型 参数单位:无 取值范围: on:表示开启。 off:表示关闭。 默认值:on 设置方式:该参数属于SIGHUP类型参数,请参考表1中对应设置方法进行设置。 设置建议:该参数取值默认为on,需要关闭Enhanced Toast线外存储功能时设置为off。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
  • udf_memory_limit 参数说明:控制每个数据库节点执行UDF时可用的最大物理内存量。该参数当前版本不生效,请使用FencedUDFMemoryLimit和UDFWorkerMemHardLimit参数控制fenced udf worker虚存。 参数类型:整型 参数单位:kB 取值范围:200*1024 ~ 2147483647 默认值:204800(即200MB) 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。例如,设置为204800,不带单位,表示204800kB;设置为300MB,带单位,表示300MB。取值如果要带单位,必须为kB、MB、GB。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
  • UDFWorkerMemHardLimit 参数说明:控制FencedUDFMemoryLimit的最大值。 参数类型:整型 参数单位:kB 取值范围:0 ~ 2147483647 默认值:1048576(即1GB) 设置方式:该参数属于POSTMASTER类型参数,请参考表1中对应设置方法进行设置。例如,设置为200,不带单位,表示200kB;设置为3MB,带单位,表示3MB。取值如果要带单位,必须为kB、MB、GB。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
  • FencedUDFMemoryLimit 参数说明:控制每个fenced udf worker进程使用的虚拟内存。 参数类型:整型 参数单位:kB 取值范围:0 ~ 2147483647 默认值:0,表示不做内存控制。 设置方式:该参数属于USERSET类型参数,请参考表1中对应设置方法进行设置。例如,设置为200,不带单位,表示200kB;设置为3MB,带单位,表示3MB。取值如果要带单位,必须为kB、MB、GB。 设置建议:推荐使用默认值。 设置不当的风险与影响:请在充分理解参数含义,并经过测试验证后进行修改,避免出现意料之外的结果。
共100000条