oracle大表碎片分析整理 show_space分析

Oracle大表碎片分析整理

expdp导出表耗时6分钟,预估大小69.7GB,导出大小6.8GB,大概有61GB的碎片

利用show_space查看表的相关信息如下:

复制代码
Total Blocks............................9136640
Total Bytes.............................74847354880
Unused Blocks...........................0
Unused Bytes............................0
Last Used Ext FileId....................8
Last Used Ext BlockId...................1712256
Last Used Block.........................8192
The segment is analyzed.
0% -- 25% free space blocks.............6
0% -- 25% free space bytes..............49152
25% -- 50% free space blocks............9
25% -- 50% free space bytes.............73728
50% -- 75% free space blocks............19
50% -- 75% free space bytes.............155648
75% -- 100% free space blocks...........8006297
75% -- 100% free space bytes............65587585024  --->> ≈ 61GB
Unused Blocks...........................0
Unused Bytes............................0
Total Blocks............................1121012
Total bytes.............................9183330304
 -----------------------------------------------

清理碎片之前磁盘队列很高

对表做了truncate之后再次查看,以及过了8小时之后查看的结果对比如下:

复制代码
truncate后的数据:

PL/SQL 过程已成功完成。
Total Blocks............................8192 			 		---->总分配的数据块数量
Total Bytes.............................67108864 			---->总分配的数据块大小 8192*8*1024
Unused Blocks...........................8158   				---->未使用的数据块数量
Unused Bytes............................66830336			---->未使用的数据块大小 8158*8*1024
Last Used Ext FileId....................4
Last Used Ext BlockId...................875520
Last Used Block.........................34
The segment is analyzed.
0% -- 25% free space blocks.............0
0% -- 25% free space bytes..............0
25% -- 50% free space blocks............0
25% -- 50% free space bytes.............0
50% -- 75% free space blocks............0
50% -- 75% free space bytes.............0
75% -- 100% free space blocks...........0
75% -- 100% free space bytes............0
Unused Blocks...........................0
Unused Bytes............................0
Total Blocks............................0
Total bytes.............................0
 -----------------------------------------------

8小时后再次查看

PL/SQL 过程已成功完成。
Total Blocks............................8192
Total Bytes.............................67108864
Unused Blocks...........................7936
Unused Bytes............................65011712
Last Used Ext FileId....................4
Last Used Ext BlockId...................875520
Last Used Block.........................256
The segment is analyzed.
0% -- 25% free space blocks.............2
0% -- 25% free space bytes..............16384
25% -- 50% free space blocks............2
25% -- 50% free space bytes.............16384
50% -- 75% free space blocks............3
50% -- 75% free space bytes.............24576
75% -- 100% free space blocks...........69
75% -- 100% free space bytes............565248
Unused Blocks...........................142
Unused Bytes............................1163264
Total Blocks............................4
Total bytes.............................32768
 -----------------------------------------------

PL/SQL 过程已成功完成。

对表做一次统计信息收集后再查看一次

复制代码
execute dbms_stats.gather_table_stats(ownname => 'test',tabname => 'tabname' ,estimate_percent => null ,method_opt => 'for all indexed columns' ,cascade => true);

Total Blocks............................8192
Total Bytes.............................67108864
Unused Blocks...........................7936
Unused Bytes............................65011712
Last Used Ext FileId....................4
Last Used Ext BlockId...................875520
Last Used Block.........................256
The segment is analyzed.
0% -- 25% free space blocks.............1
0% -- 25% free space bytes..............8192
25% -- 50% free space blocks............3
25% -- 50% free space bytes.............24576
50% -- 75% free space blocks............1
50% -- 75% free space bytes.............8192
75% -- 100% free space blocks...........69
75% -- 100% free space bytes............565248
Unused Blocks...........................142
Unused Bytes............................1163264
Total Blocks............................6
Total bytes.............................49152
 -----------------------------------------------

PL/SQL 过程已成功完成。

清理之后磁盘队列基本为0

相关推荐
先吃饱再说1 天前
存储的进化:从 MySQL 到浏览器缓存,数据到底住在哪?
数据库
Nturmoils1 天前
字段太多看不全,ksql 的展开模式和输出控制怎么用
数据库·后端
Databend1 天前
Agent 轨迹分析与归因的数据工程实践
大数据·数据库·agent
这个DBA有点耶1 天前
SQL改写进阶:标量子查询的“隐形代价”与消除实战
数据库·mysql·架构
smallyoung1 天前
数据库乐观锁深度解析:MySQL、PostgreSQL 实战 + Spring Boot 集成指南
数据库·mysql·postgresql
parade岁月1 天前
MySQL JOIN解析:朴实无华但食之有味
数据库·后端
用户3169353811831 天前
MySQL服务无法启动问题解决全记录
数据库
vivo互联网技术1 天前
从 10 分钟到 1 秒:ES 深度分页任意跳页的三轮优化实战
服务器·数据库·redis·elasticsearch·深度分页
倔强的石头_2 天前
《Kingbase护城河》——猎捕慢查询:执行计划的微观解析与索引调优实战
数据库
SelectDB2 天前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python