代码之家  ›  专栏  ›  技术社区  ›  Otávio Décio

无索引表的SQL Server物理数据布局

  •  1
  • Otávio Décio  · 技术社区  · 16 年前

    我很好奇是否有人知道数据是如何物理排列在没有索引(甚至没有pk)的表中的。在这 question OP声称丢弃集群pk需要很长时间。我知道聚集索引是数据本身,但是解释长处理时间的新数据安排是什么?

    1 回复  |  直到 16 年前
        1
  •  4
  •   Quassnoi    16 年前

    这将是一个 HEAP :

    根据定义,堆表是没有任何聚集索引的表。

    基于堆的表的不同页面占用磁盘上不同的非连续区域,并且它们不会以任何方式链接在一起。

    表中定义的每个非聚集索引在sysindexes表中都有一个对应的条目,其indid介于2和254之间,指向第一个 IAM (索引分配映射)页。

    国际机械师协会 页面表示数据库对象(表或索引)使用的所有页面的链接列表,并由 SQL Server 用于分配和释放存储空间。

    记住这点很重要 国际机械师协会 页面不用于搜索数据或索引页面,而仅用于分配和取消分配它们。

    推荐文章