pen*_*ake 1 sql sql-server heap indexing sql-server-2008
你能解释SQL中'Extent'和'Allocation Unit'之间的区别 - 或关系吗?
分配单元基本上只是一组页面.它可以是小(一页)或大(很多页).它有一个元数据条目sys.allocation_units.它由IAM链跟踪.分配单元的最常见用途是行集的3个众所周知的AU:IN_ROW_DATA,ROW_OVERFLOW和LOB_DATA.
范围是从可被8整除的页面ID开始的任何8个连续页面.SQL Server IO以范围感知方式执行:理想情况下,立即读入整个范围,整个范围一次写出.这取决于缓冲池的当前状态,有关详细信息,请参阅如何工作:Bob Dorr的SQL Server I/O演示.范围通常一起分配,因此范围的所有页面都属于同一分配单元.但由于这会导致小表的过度分配,因此特殊类型的范围是所谓的"混合"范围,其中每个页面可以属于单独的分配单元.有关详细信息,请参阅内部存储引擎:GAM,SGAM,PFS和其他分配映射.
所以你看到的概念是相关的,但却截然不同.也许您应该解释一下您试图解决的问题是什么,或者您为什么对这些概念感兴趣,或许我们可以详细说明.
| 归档时间: |
|
| 查看次数: |
2209 次 |
| 最近记录: |