堆表支持预读

可获得性

本特性自openGauss 6.0.0-RC1版本开始引入。

特性简介

在对堆表进行扫描进行顺序页面读取时,通过一次行读入多个页面,来减少因频繁读单页的IO损耗,提升对堆表进行线性扫描的性能表现。

客户价值

提升客户在频繁进行全表线性扫描场景下的性能表现。

特性描述

在对数据库中的堆表进行线性扫描时,系统会将磁盘中的页面逐一读入内存。如果待扫描的堆表数据量巨大,频繁地访问磁盘会导致显著的性能损耗。为了解决这一问题,引入了预读功能。预读是指在对磁盘文件进行扫描时,操作系统不是逐个页面地读取,而是通过一次磁盘IO操作读取多个页面,这样可以显著减少因单页访问引起的频繁IO损耗。在数据库环境中,此功能同样适用于对堆表的线性扫描,可以一次性将多个页面读入内存,从而降低磁盘IO的次数。在执行lazy vacuum对堆表进行清理时,利用预读功能也可以加快扫描和清理过程。

用户可以根据自己的运行环境和业务需求来决定是否启用此功能,并适当调整参数大小。经验表明,在处理超过10GB数据的堆表时,启用预读功能能够有效提高线性扫描和lazy vacuum的性能。

特性增强

无。

特性约束

仅可用于非段页式、行存储引擎下的非压缩表的堆表线性扫描操作。

依赖关系

无。

意见反馈
编组 3备份
    openGauss 2024-04-27 00:42:12
    取消