刘霜
【摘要】 数据库设计是影响SQL Server数据库性能的主要因素之一,本文对数据库的设计对数据库性能的影响进行了分析,包括数据逻辑设计对数据库性能的影响,数据库物理设计对数据库性能的影响,并针对逻辑设计过程和物理设计过程都提出了相应的措施来改善和优化数据库系统的性能。为数据库性能的优化提供可行性的借鉴。
【关键词】 数据库 逻辑设计 物理设计 性能优化
一、引言
SQL Server数据库的性能受到多种因素的制约,比如数据库的结构、数据库的载体操作系统、硬件水平等等。在上述诸多因素中,有些情况必须要改变客观的情况才能够优化数据库性能,这些因素基本包括数据库本身因素之外的其他因素。而有些因素仅与数据库系统本身有关。本文对数据库结构对数据库性能的影响进行了研究,并针对数据库设计的改进来对数据库的性能进行优化。数据库的设计总是和实际应用紧密相结合的是面向客户的基本需求的,因而数据库的设计应该从客户的需求来出发进行设计。数据库的设计首先是为了满足客户的需求并且具备较好的性能,因而可以看到优化数据库的性能是数据库设计最为基本的要求之一,由于数据库的优化与数据库的设计二者紧密相关,而数据库的设计一般包括数据库的逻辑设计、数据库的物理设计以及事物日志设计等。
二、结构设计要点
要通过对数据库的设计来实现对数据库的优化,首要的是熟悉数据库的基本结构,这是通过结构设计进行数据库优化的基础。数据库一般包括一个主数据文件以及一个多人事务日志文件,此外在有些数据库中还有辅助数据文件等。一般讲主数据文件看做是整个数据库的起点。该主数据文件会指向数据库中其他的文件。主数据文件中一般会包含数据库文件的启动相关信息,主要用于存储数据,主数据文件是每个数据库所必须的。事务日志文件一般包括恢复整个数据库所需要的日志文件信息。作为数据库来说日志文件也是必须具备的,数据库可以通过数据库的日志文件来恢复数据库。辅助数据文件是相对于主数据文件来讲的,主数据文件主要是指除外主数据文件以外的全部的数据文件。因而如果主数据文件包含所有的数据文件时就不需要辅助数据文件,而实际可能的情况是由于数据库比较大而会存在多个的辅助数据文件。系统表中的model数据库会在数据库创建的过程中被转移到数据库当中。在数据库中最小的存储单位为页,其中每页为8kb的磁盘空间。在数据库中行不能够跨页,扩展是数据库的又一基本单元,可以将空间分配相应的表或者是索引。事物的日志文件含有可以恢复数据库的重要的信息,这在数据库发生故障或者是崩溃的时候尤为重要。了解数据库结构设计要点对于在数据库设计的过程中对数据库进行优化以及规范具有十分重要的意义。可以通过对数据库文件以及事物日志映射的方式来进行管理,就能够实现优化数据库的目标并能够具有较好的系统容错性。
三、数据库逻辑设计
数据库的逻辑设计主要是根据实际的业务需求和所需的数据建立数据模型。主要是对表与表之间的关系进行规范和设计,这是数据库优化的重要核心问题。从数据库结构设计对系统性能优化的整个影响机制来看,数据库的逻辑设计是对整个数据库进行性能优化的基础环节也是最为重要的环节。而数据库逻辑设计优化的过程也就是使用规范、简洁的关系来代替原来关系的一个过程。如果一个关系所有的字段都已经不再可分,那么这种关系就是规范化的逻辑关系。该关系满足数据库逻辑设计的第一范式,在此基础上进一步将属性和关键字之间进行消除可以得到第二范式,进一步消除属性与关键字之间的传递函数关系就可进一步得到第三范式,这种关系规范化的过程就是对关系进行分解的过程,因而在数据库的逻辑设计过程中必须要满足第三范式。实际上逻辑设计就是将数据分布到各个表的技术,使用规范化的设计技术能够有效的消除数据的冗余,将数据之间的层次关系理清楚,有效的保证数据库的完整,使得数据库的稳定性较好能够较为智能的解决删除时的异常。数据插入异常,也就是相关数据信息未插入到数据库当中以及更新问题等。
数据库的规范化在一定程度上降低了冗余的数据,数据库冗余数据的减少使得其在数据库中数据量有效的减少了,进而能够减少存储数据的页,这对系统查询性能具有一定程度的提升,有效的避免了数据库中多个位置有一个数据的情况。能够显著提升应用程序的效率并且能够减少数据库使用过程中所出现的错误。
但是规范化的设计有时候也会对系统的性能产生一定程度的影响,规范化实际上是将二维表分解为最小组分的表,所以对于一些查询运算可能就需要完成较为复杂的联结运算,复杂的联结运算会导致计算机运行的时间、空间以及效率的损失,且使得客户端的编程难度也极大的增加会导致较为明显的性能的下降。所以必须要对其规范化进行平衡,使用反规范化来相应的提高系统查询的速度。
四、物理设计
数据库物理设计的过程是将逻辑设计映射到物理设备上的一个过程,使用相应的软件功能可以较为方面的实现对数据库进行物理访问,数据库使用I/O接口函数来实现对数据的读写,其中磁盘设备往往会成为影响数据库性能的主要方面,在这种情况下用户可以将数据最大限度的分解到多个磁盘上,在这种情况下可以采取并行访问的方案来提高文件访问的速度,可以将每个物理磁盘创建为一个文件并设置相应的文件分组,在这过程中可以使用RAID技术来实现对数据库性能的优化。该设备允许对多个磁盘进行条带化,可以便于使用更多的磁盘进行同时进行数据的读写,然后进行查询,可以有效的提高数据查询的效率。
五、结语
通过对数据设计对数据库性能的影响分析可以看到数据的逻辑设计过程中使用规范化的设计能够在一定程度上减少数据冗余进而提高数据库系统的性能,但是逻辑规范化的设计也会存在着一定的问题可以通过反规范化设计进行均衡。物理设计过程中对数据库性能影响较大的因素为物理磁盘设备,可以使用RAID技术来对物理结构进行优化设计从而允许对多个磁盘的读写提高数据库查询的效率。
参 考 文 献
[1] 任巍. 铁路巡检作业信息实时管理系统的数据库设计[J]. 信息与电脑(理论版). 2015(02)
[2] 谭峤. SQL Server数据库性能优化研究[J]. 硅谷. 2014(08)
[3] 林元彦. SQL Server数据库性能分析与优化[J]. 电子技术与软件工程. 2013(17)