WEB开发网
开发学院数据库MSSQL Server SQL Server数据库中存储引擎深入探讨 阅读

SQL Server数据库中存储引擎深入探讨

 2007-05-15 09:26:39 来源:WEB开发网   
核心提示: 物理数据库组织与SQL Server 以前版本相比,Microsoft SQL Server 7.0与Windows NT Server更加紧密地集成在一起,SQL Server数据库中存储引擎深入探讨(4),现在,数据库直接存储在Windows NT Server的文件中,或者是64KB

物理数据库组织

与SQL Server 以前版本相比,Microsoft SQL Server 7.0与Windows NT Server更加紧密地集成在一起。现在,数据库直接存储在Windows NT Server的文件中。UNIX遗留的数据库设备和段已经被一个简单的系统替代了,这个系统将每一个数据库映射到它自己的文件集合中。

SQL Server正在向高端和低端应用扩展。有些开发人员在中间阶段开始,并且向高端推进。他们已经引入了带有不同数据格式、语言和编程API的不同产品,以便满足高端应用程序的需要。微软满足低端需求,因为许多的Microsoft Access 客户都正在向SQL Server转移,着眼在低端应用程序所需的能力。

页和字段

SQL Server 中的基本数据存储单元是页。在SQL Server 7.0中,页的大小是8KB。在每一页的开头是一个96位的头,用于保存系统信息,如页的类型,页上空闲空间的数量以及页所属对象的ID。

在一个SQL Server 7.0数据库的数据文件中有七种页类型。

图 2

数据页包括数据行中除text、ntext和 image以外的所有数据类型,text、ntext和 image是保存在单独的页中的 。数据行是连续地放在页上,紧接在页头之后。一个行偏移的表开始于页的末尾。

行偏移表包含页上每一行的一个条目。每一个条目记录了该行的第一个字节距离页的开始的距离。行偏移表中的条目的顺序与页上行的顺序是相反的。在SQL Server 7.0中,行不能够跨越页,一行中所能够包含的最大数据量是8,060字节,这并未包括text、ntext和 imag数据类型。

盘区是基本的单元,表和索引的空间分配是以盘区为单位的。一个盘区是8个连续的页,或者是64KB。为了使自己的空间分配有较高的效率,SQL Server 7.0 不会将整个的盘区分配给数据量很小的表。

上一页  1 2 3 4 5  下一页

Tags:SQL Server 数据库

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接