DB2和mysql关于表和索引是否需要reorg的研究

DB2:

DB2有个reorgchk的命令,是从SYSSTAT.TABLES和syscat.indexes这两个系统表中查表和索引的信息,并给出是否需要reorg表和索引的建议。

[db2inst1@t3-ucm-ucm-rdb ~]$ db2 reorgchk CURRENT STATISTICS on table DB2ADMIN.ACAGENTTREE

Table statistics:

F1: 100 * OVERFLOW / CARD < 5
F2: 100 * (Effective Space Utilization of Data Pages) > 70
F3: 100 * (Required Pages / Total Pages) > 80

SCHEMA.NAME                     CARD     OV     NP     FP ACTBLK    TSIZE  F1  F2  F3 REORG
----------------------------------------------------------------------------------------
Table: DB2ADMIN.ACAGENTTREE
                             1730802      0  25762  25763      - 8.33e+08   0  98 100 --- 
----------------------------------------------------------------------------------------

Index statistics:

F4: CLUSTERRATIO or normalized CLUSTERFACTOR > 80
F5: 100 * (Space used on leaf pages / Space available on non-empty leaf pages) > MIN(50, (100 - PCTFREE))
F6: (100 - PCTFREE) * (Amount of space available in an index with one less level / Amount of space required for all keys) < 100
F7: 100 * (Number of pseudo-deleted RIDs / Total number of RIDs) < 20
F8: 100 * (Number of pseudo-empty leaf pages / Total number of leaf pages) < 20

SCHEMA.NAME                 INDCARD  LEAF ELEAF LVLS  NDEL    KEYS LEAF_RECSIZE NLEAF_RECSIZE LEAF_PAGE_OVERHEAD NLEAF_PAGE_OVERHEAD  PCT_PAGES_SAVED  F4  F5  F6  F7  F8 REORG  
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Table: DB2ADMIN.ACAGENTTREE
Index: DB2ADMIN.SQL220506215117880
                            1730802  2700     0    3     0 1730802           31            31               3938                3938                0  68  91  19   0   0 *---- 
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

CLUSTERRATIO or normalized CLUSTERFACTOR (F4) will indicate REORG is necessary 
for indexes that are not in the same sequence as the base table. When multiple 
indexes are defined on a table, one or more indexes may be flagged as needing 
REORG.  Specify the most important index for REORG sequencing.

Tables defined using the ORGANIZE BY clause and the corresponding dimension 
indexes have a '*' suffix to their names. The cardinality of a dimension index 
is equal to the Active blocks statistic of the table.


[db2inst1@t3-ucm-ucm-rdb ~]$ db2 "SELECT
> CARD,  --记录数量
> FPAGES,  --表所占页面数量,包含删除记录后的空页面
> NPAGES,  --含有记录的页面数量
> OVERFLOW,  --溢出记录数量
> AVGROWSIZE  --平均记录宽度
> FROM
> SYSSTAT.TABLES
> WHERE
> TABSCHEMA = 'DB2ADMIN'
> AND TABNAME = 'ACAGENTTREE'"

CARD                 FPAGES               NPAGES               OVERFLOW             AVGROWSIZE
-------------------- -------------------- -------------------- -------------------- ----------
             1730802                25763                25762                    0        481

  1 record(s) selected.

  二、MySQL 中如何找出碎片化严重的表
  https://blog.csdn.net/weixin_42018518/article/details/109303800
  
  INFOMATION_SCHEMA架构下的TABLES或STATISTICS存储这表和索引的统计信息,并提供了show index、ANALYZE TABLE、SHOW TABLE STATUS命令来直接显示结果。
关于 MySQL 中的碎片化,一般有两种方法找出碎片:

1、使用 show table status from db_name like 'tb_name' \G
单个表的碎片化情况查询。如果没有 DML 操作,Data_free 的大小为 0(单位 KB)。

2、查询 information_schema.TABLES 获取表的碎片化信息

mysql> SELECT 
    CONCAT(table_schema, '.', table_name) as 'TABLE_NAME', 
    engine as TABLE_ENGINE,
    table_type as TABLE_TYPE,
    table_rows as TABLE_ROWS, 
    CONCAT(ROUND(data_length / ( 1024 * 1024 * 1024 ), 2), 'G') TABLE_DATA_SIZE, 
       CONCAT(ROUND(index_length / ( 1024 * 1024 * 1024 ), 2), 'G') TABLE_IDX_SIZE, 
    CONCAT(ROUND(( data_length + index_length ) / ( 1024 * 1024 * 1024 ), 2), 'G') 'TOTAL SIZE', 
    ROUND(index_length / data_length, 2)  TABLE_IDX_FRAC, 
    CONCAT(ROUND(( data_free / 1024 / 1024 / 1024),2), 'G') AS TABLE_DATA_FREE 
FROM information_schema.TABLES  
WHERE table_name='message_test_wufei';
+---------------------------+--------------+------------+------------+-----------------+----------------+------------+----------------+-----------------+
| TABLE_NAME                | TABLE_ENGINE | TABLE_TYPE | TABLE_ROWS | TABLE_DATA_SIZE | TABLE_IDX_SIZE | TOTAL SIZE | TABLE_IDX_FRAC | TABLE_DATA_FREE |
+---------------------------+--------------+------------+------------+-----------------+----------------+------------+----------------+-----------------+
| testdb.message_test_wufei | InnoDB       | BASE TABLE |   36302847 | 30.62G          | 6.30G          | 36.92G     |           0.21 | 1.05G           |
+---------------------------+--------------+------------+------------+-----------------+----------------+------------+----------------+-----------------+

三、MySQL 中如何减低表的碎片
在 MySQL 中可以使用 OPTIMIZE TABLE XXXX、ALTER TABLE XXXX ENGINE = INNODB 这两种方法降低碎片

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/965633.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

给排水 笔记

给水管&#xff08;上水管&#xff09; 概述 专用于上水系统的管道。 单位 基本单位解读 项概述符号表示备注公称直径&#xff08;DN&#xff09;指管道的平均外直径。是行业描述的标准&#xff0c;是参考值&#xff0c;并非指任何直径。-理论外直径。公称外径&#xff08…

React 设计模式:实用指南

React 提供了众多出色的特性以及丰富的设计模式&#xff0c;用于简化开发流程。开发者能够借助 React 组件设计模式&#xff0c;降低开发时间以及编码的工作量。此外&#xff0c;这些模式让 React 开发者能够构建出成果更显著、性能更优越的各类应用程序。 本文将会为您介绍五…

C++11详解(三) -- 可变参数模版和lambda

文章目录 1.可变模版参数1.1 基本语法及其原理1.2 包扩展1.3 empalce系列接口1.3.1 push_back和emplace_back1.3.2 emplace_back在list中的使用&#xff08;模拟实现&#xff09; 2. lambda2.1 lambda表达式语法2.2 lambda的捕捉列表2.3 lambda的原理 1.可变模版参数 1.1 基本…

【数据结构】_时间复杂度相关OJ(力扣版)

目录 1. 示例1&#xff1a;消失的数字 思路1&#xff1a;等差求和 思路2&#xff1a;异或运算 思路3&#xff1a;排序&#xff0b;二分查找 2. 示例2&#xff1a;轮转数组 思路1&#xff1a;逐次轮转 思路2&#xff1a;三段逆置&#xff08;经典解法&#xff09; 思路3…

OSPF基础(2):数据包详解

OSPF数据包(可抓包) OSPF报文直接封装在IP报文中&#xff0c;协议号89 头部数据包内容&#xff1a; 版本(Version):对于OSPFv2&#xff0c;该字段值恒为2(使用在IPV4中)&#xff1b;对于OSPFv3&#xff0c;该字段值恒为3(使用在IPV6中)。类型(Message Type):该OSPF报文的类型。…

第二篇:前端VSCode常用快捷键-以及常用技巧

继续书接上一回&#xff0c; 我们讲解了常用的vscode 插件。 vscode 常用的插件地址&#xff1a; 前端VSCode常用插件-CSDN博客 本篇文章&#xff0c;主要介绍vscode常用的快捷键&#xff0c;可以提高我们的开发效率。 一、VSCode常用的快捷键 注意&#xff0c;其实这个快捷…

【LeetCode】152、乘积最大子数组

【LeetCode】152、乘积最大子数组 文章目录 一、dp1.1 dp1.2 简化代码 二、多语言解法 一、dp 1.1 dp 从前向后遍历, 当遍历到 nums[i] 时, 有如下三种情况 能得到最大值: 只使用 nums[i], 例如 [0.1, 0.3, 0.2, 100] 则 [100] 是最大值使用 max(nums[0…i-1]) * nums[i], 例…

vue生命周期及其作用

vue生命周期及其作用 1. 生命周期总览 2. beforeCreate 我们在new Vue()时&#xff0c;初始化一个Vue空的实例对象&#xff0c;此时对象身上只有默认的声明周期函数和事件&#xff0c;此时data,methods都未被初始化 3. created 此时&#xff0c;已经完成数据观测&#xff0…

什么是三层交换技术?与二层有什么区别?

什么是三层交换技术&#xff1f;让你的网络飞起来&#xff01; 一. 什么是三层交换技术&#xff1f;二. 工作原理三. 优点四. 应用场景五. 总结 前言 点个免费的赞和关注&#xff0c;有错误的地方请指出&#xff0c;看个人主页有惊喜。 作者&#xff1a;神的孩子都在歌唱 大家好…

e2studio开发RA2E1(5)----GPIO输入检测

e2studio开发RA2E1.5--GPIO输入检测 概述视频教学样品申请硬件准备参考程序源码下载新建工程工程模板保存工程路径芯片配置工程模板选择时钟设置GPIO口配置按键口配置按键口&Led配置R_IOPORT_PortRead()函数原型R_IOPORT_PinRead()函数原型代码 概述 本篇文章主要介绍如何…

【LLM】为何DeepSeek 弃用MST却采用Rejection采样

文章目录 拒绝采样 Rejection sampling&#x1f3af;马尔可夫搜索树 &#x1f333;RFT和SFT1. RFT和SFT的区别2. 如何将RFT用于数学推理任务&#xff1f; Reference 在提升大语言模型&#xff08;LLM&#xff09;推理能力时&#xff0c;拒绝采样&#xff08;Rejection Sampling…

股指入门:股指期货是什么意思?在哪里可以做股指期货交易?

股指期货是一种以股票指数为标的物的期货合约&#xff0c;也可以称为股票指数期货或期指。 股指期货是什么意思&#xff1f; 股指期货是一种金融衍生品&#xff0c;其标的资产是股票市场上的股指&#xff0c;例如标普500指数、道琼斯工业平均指数、上证50指数等。 股指期货允…

前端构建工具大比拼:Vite、Webpack、Parcel、esbuild 等热门工具使用分析

前端构建工具大比拼&#xff1a;Vite、Webpack、Parcel、esbuild 等热门工具使用分析 随着前端技术的不断发展&#xff0c;构建工具成为了每个前端项目的核心部分。通过合适的构建工具&#xff0c;我们能够优化开发效率、提升构建速度&#xff0c;并最终实现更加高效和灵活的开…

安装和使用 Ollama(实验环境windows)

下载安装 下载 https://ollama.com/download/windows 安装 Windows 安装 如果直接双击 OllamaSetup.exe 安装&#xff0c;默认会安装到 C 盘&#xff0c;如果需要指定安装目录&#xff0c;需要通过命令行指定安装地址&#xff0c;如下&#xff1a; # 切换到安装目录 C:\Use…

node.js使用mysql2对接数据库

一、引言 在现代Web开发中&#xff0c;Node.js作为一种高效、轻量级的JavaScript运行时环境&#xff0c;已经广泛应用于后端服务的开发中。而MySQL&#xff0c;作为一个广泛使用的关系型数据库管理系统&#xff08;RDBMS&#xff09;&#xff0c;提供了强大的数据存储和查询功能…

Unity 快速入门 1 - 界面操作

本项目将快速介绍 Unity 6的基本操作和功能&#xff0c;下载附件的项目&#xff0c;解压到硬盘&#xff0c;例如 D:\Unity Projects\&#xff0c; 注意整个文件路径中只有英文、空格或数字&#xff0c;不要有中文或其他特殊符合。 1. 打开Unity Hub&#xff0c;点击右上角的 O…

携程Java开发面试题及参考答案 (200道-上)

说说四层模型、七层模型。 七层模型(OSI 参考模型) 七层模型,即 OSI(Open System Interconnection)参考模型,是一种概念模型,用于描述网络通信的架构。它将计算机网络从下到上分为七层,各层的功能和作用如下: 物理层:物理层是计算机网络的最底层,主要负责传输比特流…

云轴科技ZStack+海光DCU:率先推出DeepSeek私有化部署方案

针对日益强劲的AI推理需求和企业级AI应用私有化部署场景&#xff08;Private AI&#xff09;&#xff0c;云轴科技ZStack联合海光信息&#xff0c;共同推动ZStack智塔全面支持DeepSeek V3/R1/Janus Pro系列模型&#xff0c;基于海光DCU实现高性能适配&#xff0c;为企业提供安全…

通信易懂唠唠SOME/IP——SOME/IP协议简介

一 简介 1.1 面向服务的中间件 SOME/IP是Scalable service-Oriented MiddlewarE over IP (SOME/IP)的缩写&#xff0c;基于IP的可扩展面向服务的中间件。 1.2 广泛应用于汽车嵌入式通信 SOME/IP是一种支持远程通信的汽车/嵌入式通信协议 。支持远程过程调用&#xff08;RPC…

游戏引擎学习第89天

回顾 由于一直没有渲染器&#xff0c;终于决定开始动手做一个渲染器&#xff0c;虽然开始时并不确定该如何进行&#xff0c;但一旦开始做&#xff0c;发现这其实是正确的决定。因此&#xff0c;接下来可能会花一到两周的时间来编写渲染器&#xff0c;甚至可能更长时间&#xf…