传统表重组使用影子副本方法,从而构建正在重组的表的完整副本。
传统或脱机表 reorg 操作包括四个阶段:
SORT - 在此阶段,如果 REORG TABLE 命令中指定了索引,或者已对表定义集群索引,那么首先根据该索引对表行进行排序。如果指定了 INDEXSCAN 选项,那么使用索引扫描方法对表进行排序;否则,使用表扫描排序方法。此阶段仅适用于集群表 REORG 操作。空间回收 REORG 操作从构建阶段开始。
BUILD - 在此阶段,将构建整个表的重组副本,此操作在该表的表空间或者 REORG TABLE 命令中指定的临时表空间中执行。
REPLACE - 在此阶段,将原始表对象替换为临时表空间中的副本,或者在所重组表的表空间中创建指向新构建的对象的指针。
RECREATE ALL INDEXES - 在此阶段中,会重新创建先前对该表定义的所有索引。
在替换阶段开始之前,脱机表重组是一个完全成功或完全失败的过程。如果系统在排序或构建阶段崩溃,那么重组操作将回滚,并且不会在崩溃恢复期间重新执行。
如果系统在替换阶段开始之后崩溃,那么重组操作必须完成,这是因为已完成所有重组工作,原始表可能不再可用。在崩溃恢复期间,需要已重组的表对象的临时文件,而不是用于执行排序的临时表空间。恢复操作将完全重新开始替换阶段,并且需要恢复副本对象中的所有数据。在这种情况下,系统管理的空间 (SMS) 表空间与数据库管理的空间 (DMS) 表空间之间有一个差别:必须将 SMS 中已重组的表对象从一个对象复制到另一个对象;但在 DMS 中,如果在同一个表空间中执行重组,那么只需指向已重组的表对象,并且将删除原始表。将不重建索引,但在崩溃恢复期间会将索引标记为无效。数据库将根据一般规则确定重建索引的时间:在数据库重新启动时或第一次访问索引时。
如果在索引重建阶段发生崩溃,那么由于新的表对象已存在,因此不会重新执行任何操作。将按先前描述的方式来处理索引。
在前滚恢复期间,如果旧版本的表在磁盘上,那么重新进行重组操作。前滚实用程序使用构建阶段记录的记录标识 (RID) 来重新应用创建了已重组的表的操作,从而重复构建和替换阶段。将按先前描述的方式来处理索引。仅当最初使用了临时表空间时,已重组的对象的副本才需要临时表空间。在前滚恢复期间,可以同时重新执行多个重组操作(并行恢复)。

https://www.cndba.cn/hbhe0316/article/4790

https://www.cndba.cn/hbhe0316/article/4790 https://www.cndba.cn/hbhe0316/article/4790

脱机表重组的性能在很大程度上由数据库环境的特征决定。
以 ALLOW NO ACCESS 方式运行的重组操作与以 ALLOW READ ACCESS 方式运行的重组操作在性能方面几乎没有任何差别。差别在于,在 ALLOW READ ACCESS 方式的重组操作期间,实用程序可能必须先等待其他应用程序完成扫描并释放它们的锁定,然后才能替换该表。在以任何一种方式运行的重组操作的索引重建阶段,该表都不可用。
有关提高性能的技巧
如果有足够的空间,那么请对原始表和表的重组副本使用同一个表空间,以代替使用临时表空间。这将节省从临时表空间复制已重组的表所需的时间。
考虑在重组表之前删除不必要的索引,以便减少重组操作期间需要维护的索引数目。
确保正确设置已重组的表所在的表空间的预取大小。
调整 sortheap 和 sheapthres 数据库配置参数,以便控制可用于排序的空间量。由于每个处理器都将执行私有排序,因此 sheapthres 的值至少应该是 sortheap x 使用的处理器数。
调整页清理程序数,以确保尽快清除缓冲池中的脏索引页。https://www.ibm.com/support/knowledgecenter/zh/SSEPGG_10.5.0/com.ibm.db2.luw.admin.perf.doc/doc/c0024853.htmlhttps://www.cndba.cn/hbhe0316/article/4790https://www.cndba.cn/hbhe0316/article/4790https://www.cndba.cn/hbhe0316/article/4790https://www.cndba.cn/hbhe0316/article/4790

要使用 REORG TABLE 命令来重组表,只需指定该表的名称。例如:
reorg table employee
您可以使用特定的临时表空间来重组表。例如:
reorg table employee use mytemp
您可以重组表并根据特定索引对行进行重新排序。例如:
reorg table employee index myindex
要使用 SQL CALL 语句来重组表,请通过 ADMIN_CMD 过程来指定 REORG TABLE 命令。例如:
call sysproc.admin_cmd (‘reorg table employee’)
要使用管理应用程序编程接口来重组表,请调用 db2Reorg API。https://www.cndba.cn/hbhe0316/article/4790https://www.cndba.cn/hbhe0316/article/4790https://www.cndba.cn/hbhe0316/article/4790

版权声明:本文为博主原创文章,未经博主允许不得转载。

Linux,oracle

db2 reorg的四个阶段相关推荐

  1. DB2001 深入了解DB2 reorg

    深入了解DB2 reorg[摘自网络] 深入了解DB2 reorg[摘自网络] 概述 What Why When How 建议(待实现) 深入了解DB2 reorg[摘自网络] 概述 数据库性能调优是 ...

  2. db2 reorg到底需要多少表空间

    脱机reorg需要一定的空间,这个空间与目标所在的数据表空间.索引表空间.以及临时表空间均有关,各空间需求的大小与表和索引所占用的数据页和索引页相关. (1)对表执行reorg操作如:db2 reor ...

  3. 沈向洋、华刚:读科研论文的三个层次、四个阶段与十个问题

    来源:微软学术合作 本文约6000字,建议阅读8分钟. 阅读文章不仅是大家在科研道路上进步的必由之路,也能使我们的心智不断成长,认知模型和思维方式不断完善. 沈向洋博士:如何以正确方式打开一篇科研论文 ...

  4. 企业价值观念形成的四个阶段

    文/舒化鲁 企业价值观念的形成一般要经过四个阶段: 首先是倡导阶段. 这一般是企业高层领导人对这个企业经营中的九对关系中的某个或者全部,有了一定程度的认识之后,在自己的头脑中形成了处理协调这相应关系的 ...

  5. Windows保护模式学习笔记(十四)—— 阶段测试

    Windows保护模式学习笔记(十四)-- 阶段测试 题目一 解题步骤 题目二 解题步骤 题目一 描述:给定一个线性地址,和长度,读取内容 int ReadMemory(OUT BYTE* buffe ...

  6. 个人管理 - 程序员的四个阶段

    突然记起来刚来公司的时候,对程序员定义了四个阶段,每个阶段用一句话表示出来,其实就是Four stages of competence,下面介绍一下这几个阶段,看看我们自己处在哪个阶段,千万不要把阶段 ...

  7. 2017计算机发展,【2017年整理】计算机发展的四个阶段.doc

    [2017年整理]计算机发展的四个阶段 计算机发展的四个阶段 第一代计算机:电子管数字计算机(1946-1958年) 硬件方面,逻辑元件采用电子管,主存储器采用汞延迟线.磁鼓.磁芯:外存储器采用磁带. ...

  8. 典型瀑布模型四个阶段_古典瀑布模型的不同阶段

    典型瀑布模型四个阶段 The different phases that are included in the classical waterfall model are: 经典瀑布模型包含的不同阶 ...

  9. 计算机网络阶段,计算机网络的发展大致可分为四个阶段,目前人类进入了()。 - 问答库...

    问题: [单选] 计算机网络的发展大致可分为四个阶段,目前人类进入了(). A . 计算机网络阶段 B . 信息高速公路阶段 C . 计算机网络互联阶段 D . 远程终端联机阶段 教育心理学是研究教育 ...

最新文章

  1. Firefox的input缓存
  2. linux shell 显示文件最后几行
  3. 配置swagger2_Springboot(三十五)启用Swagger2
  4. ECC 公钥加密 使用相同的ECC公钥对 对 相同的数据进行加密,每次的加密结果是一致的吗?
  5. Magento搬家、换域名、重新安装教程
  6. 员工30年换150万补偿款!佳能珠海关厂 因给太多遭痛骂:恶意拉高赔偿标准
  7. MFC9.0 Outlook控件的标题显示无法改动
  8. 教你React Native使用fetch实现图片上传
  9. 最大堆(创建、删除、插入和堆排序)图文详解
  10. linux命令五十七之tar命令;linux多个文件压缩打包到一个压缩文件
  11. 2020.10.16 web前端 盒子模型border-box 图片模糊处理(filter)clac的使用 CSS的过渡(trancsion hover)
  12. 第二版 手把手教你如何建立自己的Linux系统
  13. 快速查毒及电脑防毒的解决方案
  14. Python 医学知识图谱问答系统(一),建立医学知识图谱,基于neo4j知识图谱的医学问答体系
  15. Microsoft office 2007 word PPT 转pdf的插件
  16. 游戏模型外包-【精刚石数位】
  17. Matlab 从怀俄明大学上爬取探空数据
  18. Object oriented Design
  19. 【AAAI2021】Dual-Level Collaborative Transformer for Image Captioning
  20. 电脑视频html5全屏掉帧,uwp看视频全屏掉帧或卡机怎么办-解决uwp看视频全屏掉帧或卡机的方法 - 河东软件园...

热门文章

  1. 前端开发:a标签的使用
  2. WinMail邮件服务器(客户端)环境搭建与配置
  3. IoT企业物联网平台,从设备端到云端业务系统全链路开发实战——实践类
  4. python四则运算器编写_0007 编程入门python语言之四则运算器
  5. 2019年中国研究生数学建模竞赛D题 汽车行驶工况构建
  6. 一个基于 LKM 的 Linux 内核级 rootkit 的实现
  7. 极米投影仪: U盘安装APP
  8. 哪个牌子的护眼灯最好?
  9. java从零到项目实战(八)
  10. 【2】模块参数与模块之间的通信