2023年11月29日发(作者:)

碎片与数据库性能

北京寰信通科技有限公司

Beijing Global Technology Co. LTD

目 录

第一节 前言.......................................................2

第二节 为什么需要考虑碎片.........................................2

第三节 什么是碎片.................................................4

1. 术语定义......................................................4

2. 碎片定义......................................................5

第四节 碎片的类型.................................................6

1. 不规则页链(Messy Page Chains)...............................6

2. 页面利用率低下(Poor Page Utilization).......................9

3. 扩展级碎片(Extent Fragmentation)...........................11

4. 行碎片(Row Fragmentation)..................................12

第五节 解决碎片的问题............................................13

1. 分析删除操作的影响...........................................13

2. 分析插入操作的影响...........................................13

3. 分析更新操作的影响...........................................15

4. 预防扩展单元碎片.............................................15

5. 整理碎片的容量规划...........................................16

6. 使用固定长度的行尺寸.........................................18

7. 使用单调递增的聚簇索引键.....................................18

8. 使用唯一聚簇索引键...........................................18

9. 使用大块I/O时的考虑.........................................19

第六节 整理碎片的效果............................................20

第七节 结论......................................................21

寰信通技术资料汇编

-1-

北京寰信通科技有限公司

Beijing Global Technology Co. LTD

寰信通技术资料汇编

-1-

北京寰信通科技有限公司

Beijing Global Technology Co. LTD

第一节 前言

这个白皮书试图帮助DBA和管理者解决如何保证在生产环境中的Sybase

据库系统运行在高性能下。本书假定读者已经比较熟悉Sybase数据库服务器的有

关知识。

因为Microsoft SQL Server 6.5Sybase 11.9.2以前的版本具有相同的数据结

构,所以这个白皮书中的大部分内容也适于Microsoft SQL Server

第二节 为什么需要考虑碎片

Client/Server应用开发者有时会关心数据库对象(也就是表)的长期储存。

DBA作为生产系统的支持者,必须保障应用系统每天的正常运行,因此他们

需要监控数据库对象,如磁盘设备、段、表的尺寸及索引使用情况。

开发者在设计数据库应用时,首先需要创建逻辑模型,以满足应用的需求。

下一步是要创建一个良好的物理模型,以保证逻辑设计模型优化工作。

物理设计阶段的工作包括:为表选择正确的数据类型、确定适当的规范化程

度、考虑数据库中数据的长期增长情况及对Sybase服务器和数据库的维护。

Sybase DBA需要保持高性能的RDBMS环境。包括OLTP应用、批处理有较

快响应时间及维持较高的吞吐量。

虽然Sybase ASE SQL ServerRDBMS保持高性能的引擎,但是数据库

性能的好坏很大程度上依赖于应用。