zoukankan      html  css  js  c++  java
  • SQL SERVER 2008 索引、数据存储基本理论【原创】

    介于,最近发现,向高级程序员进阶过程中,SQL SERVER并发处理,索引,GC,缓存方面的高级理解必不可少。因此,为以后做准备,决定将相关的文档整理一份。

    希望能对自己,对博友有一定的吧帮助。

    一:基本概念

    1.索引的用途:为数据库提供了额外的方式查找数据并快速找到数据的存储位置。我们可以把SQL SERVER中的数据视为存储在某种层次结构中的数据。

    2.文件:数据库有关的文件包括两种:.mdf文件和.ldf文件。

    ①.mdf文件是主物理数据库文件,是最终存储数据的地方,可以添加“次文件”(.ndf文件),次文件不需要与主文件位于同一主物理驱动器。

    ②.ldf文件,日至文件。

    3.区段:区段是用来给表和给定文件中的索引分配空间的基本存储单元,它是由8个连续的64kb数据页组成。

     关于区段有以三个要点:

    ①一旦一个区段已满,下一条记录将占用一个完整的区段大小,而不是记录本身的大小。

    ②通过预先分配空间,占用一个完整的区段大小,SQLSERVER省下了为每一条记录分配新空间的时间。

    ③分配给数据库的空间是从硬盘可用空间中消失的空间,区段的空间则仅仅是单独数据库文件获得的整个空间中分配的空间。

    4.页:与区段是数据库中的分配单元类似,页是特定区段中的分配单元,页是到达真正的数据行的最后一个级别。页中的行数是不固定的,并且,行不允许跨页。

     对于插入的每一行,为了表明特定行的数据开始于页中的何处,注意我们把行偏移量放置在末尾页。如图:

    4.1索引页:保存非聚集索引的非叶级页和叶级页以及聚集索引的非叶级页。

  • 相关阅读:
    c#实现串口操作 SerialPort
    ASP.NET Core 上传大文件无法接收的问题
    如何将qlv格式的腾讯视频转换为mp4格式
    C#中HttpWebRequest的GetRequestStream执行的效率太低,甚至偶尔死掉
    LGPL 与GPL的区别
    ffmpeg
    HTTP协议/RTSP协议/RTMP协议的区别
    C#写的CRC16检验算法
    VS里属性窗口中的生成操作释义
    iOS:APNS推送主要代码
  • 原文地址:https://www.cnblogs.com/caoheyang911016/p/4119501.html
Copyright © 2011-2022 走看看