- 28
- 0
- 约2.31千字
- 约 4页
- 2021-11-07 发布于河北
- 举报
PGE \* MERGEFORMT
PGE \* MERGEFORMT 1
浅谈数据库存储结构和效率优化
XX TP399 XX XX 1673-9671-(20XX)012-0142-01 1 数据库组织结构 数据库的性能优化直接影响到整个数据库应用系统的有效运行。要想优化数据库的性能,首先就必须要对数据库的组织结构有很清楚的了解。不管是什么版本的SQLSelver在其数据存储的组成结构上都是一样的,它主要由以下几个部分组成: 1.1 数据库文件 1)在数据库系统当中,数据是重心,所以它必定包含有数据库文件。数据文件记录有用户存储的基本数据、对象以及操作日志。根据这些存储内容的不同,可以把数据库文件大致的分为三类。其中最重要的要属主要数据库文件(PrimryDtbseFile),它的后缀名为.MDF。在一个数据库当中可以存在有一个或一个以上的数据库文件,但是主要数据库文件只能有一个,且这些数据库文件只能被一个数据库所拥有。它们的作用是存储数据库的启动信息、部分或全部数据。 2)次要数据库文件(SecondryDtbseFile),后缀名为.NDF。它的主要作用是存储在主要数据库文件当中为存储的多余数据和数据库对象,它在数据库当中可以存在多个,但也不是必须存在的。它存在的优点在于可以将数据分别存储在不同的物理磁盘上,以提高数据的存储、读取效率;还有就是当主要数据文件的大小超过系统限制时,就必须使用它来存储数据。 3)事务日志文件,它的扩张名为.LDF。它的作用是记录所有操作(比如插入,删除,更新的操作),这样的话当数据损坏时能够通过事务日志实施补救措施。在每一个数据库中至少都存在有一个事务日志文件,且同意存在多个。 1.2 数据库文件组 通过数据库文件组,数据库能够很好的对数据文件进行分配和治理。和数据库文件一样,文件组也有主、次(PrimryFileGroup、SecondryFileGroup)之分。数据库中的每一个文件都只能存在于一个文件组当中,而一个文件组也只能被一个数据拥有。值得一提的是事务日志文件是不能被分配到任何一个的文件组中。在主要文件组当中,它存储了系统表,以及在数据库初始化阶段,所有的未分组文件都被分配到了这里。 1.3 数据库文件空间的分配 在SqlServer中,它的日志文件是通过具体的记录明细组成,与之不同的数据文件是划分为多个不同的区域和页面。“页”是SQLServer中存储数据的最基本单位,它的大小都为8KB,每页中的前96个字节为页头,用于存储特别数据。在实际对表的插入和更新操作时,数据行不能够跨页。8个连续的页被称为簇,大小为64KB,一个表或是索引当中至少存在一个簇。 2 数据库优化措施 2.1 物理结构的优化 数据库中的数据最后始终是存放在物理磁盘上的,所以通过对数据库物理结构进行优化是提高数据库效率的一个重要方式。对物理存储结构优化虽然并不能够减少对物理存储的读写次数,但却可以使这些读写尽量并行,减少磁盘读写竞争,减少不必要的物理存储结构的扩充,从而系统效率得以提高。通过合理的方式来分配数据的存储空间是对其物理结构进行优化的重要途径,这样可以并行的对数据进行访问,减少磁盘读写竞争带了的效率低下问题。 2.2 逻辑结构的优化 1)规范表结构。使表尽可能的规范化,能够幸免在对它进行数据操作时可能会发生的异常性能,如果规范化是在对实体有了相当了解的基础上完成的,那么表设计就足够灵活,但是规范化常导致许多小表,而使应用面临着相当多的连接,会增加性能上的开销。所以,在设计数据库时,需要根据实际的具体情况,采纳规范化设计和有选择地采纳非规范化化设计。 2)科学的建立和使用索引。索引当然能够大幅度的改善对数据的查询效率,可是这大大的增加了存储量,也降低了对表的插入效率。所以,不科学的建立和使用索引会导致数据库的工作效率降低。正是因为如此,所以我们在实际的工作当中,需要对数据库的操作语句进行统计分析,根据具体的需求性合理的建立、使用索引。同时在使用索引的时候,要尽可能的幸免对索引列的计算操作,也要幸免使用NULL。 3)合理的使用查询语言。由于排序操作会影响数据库的效率,所以所以尽量减少排序和分组排序操作。要是因为功能要求,必须使用排序操作,就尽量的在索引列上进行,因为这样能提高排序的速度。如果对于查询结果没有唯一性的要求,最好使用UNIONLL代替UNION。在使用WHERE进行查询过滤时,最好是让过滤数量最多的条件放在最前面,还要尽可能的幸免用NOT/OR进行条件连接。 4)合理使用锁与事务。在事务进行
原创力文档

文档评论(0)