关于磁盘预读

数据库磁盘预读设计旨在减少IO等待,通过预读连续数据页提升效率。GBase8s/Informix中,预读参数RA_PAGES和RA_THRESHOLD用于控制预读行为。当RA_THRESHOLD值达到阈值时,数据库会预读RA_PAGES数量的页面。onstat-p输出的统计项如ixda-RA、idx-RA等展示了预读活动。预读策略能够有效改善数据库性能。

数据库磁盘预读设计的初衷是为减少IO等待,通过顺序扫描提高IO的效率。

原理大致如下:

1、当某个数据库操作,数据库需要从磁盘上频繁读取数据的时候,会产生相对较多的IO等待,影响性能;

2、为了避免这个情况,数据库采用了预读的机制,也就是当读取的内存中还有若干页需要处理的时候就开始触发磁盘预读,而且是预读若干连续的数据页(降低IOPS的需求),从而提高效率

gbase8s/informix涉及预读的有两个参数 RA_PAGES和RA_THRESHOLD。

RA_PAGES:指定数据库服务器执行预读时从磁盘或索引读取的页数。

RA_THRESHOLD:指定内存中触发数据库服务器执行下一次预读的时候还剩余未处理页数。

RA_PAGES=10,RA_THRESHOLD=4:当BUFFERPOOL中还有4个页面需要处理时,数据库服务器将提前读取10个页面。

onstat -p的输出中:

ixda-RA:从索引页到数据页read-aheads的计数;

idx-RA :read-aheads遍历索引页的计数;

da-RA :read-aheads仅扫描数据页的计数;

logrec-RA:数据库服务器发生read-aheads的逻辑日志记录;
RA-pgsused:数据库服务器预读使用的页数;

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

请叫我曾阿牛

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值