暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

GBASE 8s Light Scan简介

Dr.王 2022-02-24
253

 Light Scan 翻译为中文是“轻度扫描”, Light Scan 是一种可绕过缓冲池开销的大型数

据表的顺序扫描方式,数据库服务器会为 light scan 查询单独在虚拟度开辟一个单独的内存

区域。Light Scan 是用于执行大型数据表顺序扫描的最快方法。

在以下 4 个条件下会自动使用 light scan。

1. 优化器选择对表的顺序扫描。

2. 表中的页数大于缓冲池中的缓冲区数。

3. 表的字段类型包含:varchar、lvarchar

4. 使用的隔离级在表上不获取任何锁或者获取一个共享锁。

l (1)脏读隔离级别(Dirty Read)。

l (2)可重复读隔离级(Repeatable Read),前提是已经有共享锁。

l (3)提交读隔离级别,前提是表上已经有了共享锁。

在某些应用情景下,我们往往需要强制和确认使用 light scan,即使表包含 varchar、lvarchar 类型的字段。我们可以通过如下方法来强制使用 light scan。

set isolation dirty read;

set environment IFX_BATCHEDREAD_TABLE '1';

Select * from tabname; --顺序扫描方法访问表

 

Light Scan 典型应用场景如下:

在一些大的报表类查询业务中需要扫描大部分记录,而且表记录非常大的情况。特别是在 OLTP 业务系统繁忙的情况下,需要运行 DSS 查询,推荐使用 light scan 获取较好的性能,同时由于 light scan 不是用公共的 bufferpool,所以不会影响其他业务的运行。

在很多情况下,DBA 为关键表的文本备份,或者表重建需要将表数据导出到文本文件。在此情况下可以有 light scan。

可以通过 onstat -g scn 命令来监控当前启用 light scan 的情况。

最后修改时间:2022-02-24 09:59:09
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论