返回首页

gbase数据、南大通用产品文档:GBase8sonmode C: 控制 Btree 扫描程序

更新日期:2024年09月11日

可以使用 onmode -C 命令控制 B-tree 扫描程序并且指定关于 B-tree 扫描程序线程的信
息。
语法:

元素
用途
关键注意事项
-C
控制用于清除已删除
项索引的 B-tree 扫
描程序
对同时运行的线程的数量没有限制。然而,可同时
启动的线程数限制为 128 个。 例如:如果您想要
运行 150 个线程,
那么要执行两条命令:
onmode
-C
100 和 onmode -C 50
start count
启动其他的 B-tree
扫描程序线程
如果没有指定 count ,那么假定count 1。对可以
指定扫描程序线程数量没有限制。
stop
countkill
count
停止 B-tree 扫描程
序线程
如果没有指定 count ,那么假定count 1 。 停止
所有的所有扫描程序以阻止所有的所有被清除。
上述任一命令都可以停止 B-tree 扫描程序

GBase 8s 管理员参考
南大通用数据技术股份有限公司 - 354 -

元素
用途
关键注意事项
threshold
size count
设置在热列表上放置
之前索引必须遇到的
已删除项的最小数量
一旦所有超过阈值的索引都被清除并且 B-tree 扫
描仪也没有别的工作,在该阈值之下的索引就会被
添加到热列表
duration
num
热列表处于有效状态
的秒数
在秒数到期之后,
热列表会由下一个可用的 B-tree
扫描程序重建,即使表上有未处理的项目。不会中
断扫描程序当前正在处理的请求
rangesize
size
在启用索引范围清除
之前,确定索引的大小
大小为 -1 的值可用来禁用范围扫描
alice num 设置系统的 alice 方

有效 num 值的范围是:0 (OFF) 到 12
compression
value
对于数据库服务器实
例,更改,合并两个部
分使用的索引页的级
别。如果这些页上的数
据合计设定级别,那么
页合并
级别的可用值为: low 、med (中等)、high 和
default 。系统的缺省值是 med

B-tree 扫描程序有追踪索引的有效性以及当前索引放在服务器上的额外工作量的统计信
息。
基于由删除的索引项引起的索引已完成的额外工作量,
B-tree 扫描程序生成了称为
“热
表”的整齐索引列表,这使得服务器做了额外的工作。将清除导致最高额外工作量的索引,
然后以递减的方式清除剩下的索引。 DBA 可以动态地分配清除线程,因此允许可配置的
工作负载。
该命令有等同的 SQL 管理 API 函数。

1.
使用智能索引且最有效的方法是字段与常量表达式直接操作的形式:
(rownumtag>=100*10);
改成
(rownumtag+1>=100*10+1);
就无法使用智能索引。
2.
其次一边是字段,另一边是常量表达式(常量当然也可以),常量表达式无
论多么复杂都没有问题,因为它只需要计算一遍。
表达式与常量进行比较的条件不能用智能索引。

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
1304
如:
SELECT ... FROM ... WHERE ceil(rownumtag / ceil(TO_NUMBER('100')))
='10' ;
改为:
SELECT ... FROM ... WHERE rownumtag>100*9 AND
rownumtag<=100*10;

图2- 2 服务响应流程