基于湖库一体架构,统一管理结构化、半结构化与非结构化等多模态数据,一个系统承载事务处理、实时分析与 AI 工作负载。
SET_ATTRIBUTE
更新时间:2026-08-18 15:46:31
SET_ATTRIBUTE 过程用于为指定向量索引设置自动重建相关属性,包括并行度、触发阈值与触发周期。
语法
PROCEDURE SET_ATTRIBUTE(
IN idx_name VARCHAR(65535),
IN table_name VARCHAR(65535),
IN attribute_name VARCHAR(65535),
IN attribute_value VARCHAR(65535));
参数说明
| 参数 | 描述 | 是否必选 |
|---|---|---|
| idx_name | 向量索引名称。 | 必选 |
| table_name | 索引所在表名。 | 必选 |
| attribute_name | 属性名称。 | 必选 |
| attribute_value | 属性值,以字符串形式传入。 | 必选 |
支持的属性
| attribute_name | 说明 | attribute_value 示例 |
|---|---|---|
parallel |
自动重建的并行度。 | '20' |
rebuild_trigger_percentage |
自动重建触发阈值,表示增量数据占基线数据的比例,取值范围 [0, 1]。缺省为 0.2(20%)。 |
'0.5' |
rebuild_repeat_interval |
自动重建的检查/触发周期,语法与 Scheduler 的 REPEAT_INTERVAL 类似。 |
'FREQ=SECONDLY; INTERVAL=600'、'FREQ=DAILY; byhour=19;byminute=45;bysecond=0' |
示例
-- 设置重建并行度
CALL DBMS_VECTOR.SET_ATTRIBUTE('idx1', 't1', 'parallel', '4');
-- 设置重建触发阈值(增量数据达到基线 50% 时触发)
CALL DBMS_VECTOR.SET_ATTRIBUTE('idx1', 't1', 'rebuild_trigger_percentage', '0.5');
-- 设置重建触发周期:每 600 秒检查一次
CALL DBMS_VECTOR.SET_ATTRIBUTE('idx1', 't1', 'rebuild_repeat_interval', 'FREQ=SECONDLY; INTERVAL=600');
-- 设置重建触发周期:每天 19:45:00 检查
CALL DBMS_VECTOR.SET_ATTRIBUTE('idx1', 't1', 'rebuild_repeat_interval', 'FREQ=DAILY; byhour=19;byminute=45;bysecond=0');
约束
- 版本升级后使 PL 语法生效:版本升级后,须在系统租户下手动执行以下语句,使新增的
DBMS_VECTORPL 语法生效:ALTER SYSTEM RUN UPGRADE JOB 'upgrade_all'; - 手动调用重建会覆盖并行度:若已通过
SET_ATTRIBUTE将parallel设为a,再手动执行DBMS_VECTOR.REBUILD_INDEX(..., parallel=b)时,本次重建使用并行度b,且索引上记录的parallel属性最终更新为b。