SQLSERVER中的ALLOCATION SCAN和RANGE SCAN

SQLSERVER中的ALLOCATION SCAN和RANGE SCAN

寫這篇文章的開始,我還不知道ALLOCATION SCAN的工做原理是怎樣的,網上資料少得可憐html

求助了園子裏的某位大俠,他看了個人信息幾天以後纔回復我,不過他的回覆裏沒有答案sql

這幾天一直在苦思冥想,後來終於經過動手,驗證出來了,知道ALLOCATION SCAN的工做原理是怎樣的(結果中秋節過完就出差去了)數據庫

10月3日回到家立刻開始動筆ide

在看下去以前請你們先看一下下面的文章sqlserver

SQLSERVER彙集索引與非彙集索引的再次研究(上)
SQLSERVER彙集索引與非彙集索引的再次研究(下)
查看SQLSERVER內部數據頁面的小插件Internals Viewer測試

SQLSERVER新建表的時候頁面分配狀況是怎樣的?spa

存儲引擎揭祕:基本結構之四——IAM頁,IAM鏈和存儲單元插件

SQL Server 2008存儲結構之IAM結構3d

看這篇文章以前必定要很是清楚彙集索引頁面/非彙集索引頁面和IAM頁面的做用指針

彙集索引頁面:有指針,有記錄,能夠準肯定位到數據頁面

非彙集索引頁面:有指向堆中的指針,能夠準肯定位到數據頁面

IAM頁面:IAM頁面只知道表中數據頁面的分配狀況,他不知道這些數據頁面裏都存儲了哪些表中的記錄

 

 


知識準備

咱們回顧一下彙集索引的知識

一個數據頁面只有一條記錄

你們知道在彙集索引頁面裏,每一行都會指向一個數據頁,以下圖

SQL腳本

 1 USE [tempdb]
 2 GO
 3 --DROP TABLE [dbo].[ct1]
 4 --創建彙集索引表
 5 CREATE TABLE ct1(c1 INT, c2 VARCHAR (5000));
 6 GO
 7 --創建彙集索引
 8 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
 9 GO
10  
11 --插入測試數據
12 DECLARE @a INT;
13 SELECT @a = 1;
14 WHILE (@a <= 3)
15 BEGIN
16     INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
17     SELECT @a = @a + 1
18 END
19 GO
20 
21 
22 
23 
24 --查詢數據
25 SELECT * FROM ct1 
26 
27 
28 
29 CREATE TABLE DBCCResult (
30 PageFID NVARCHAR(200),
31 PagePID NVARCHAR(200),
32 IAMFID NVARCHAR(200),
33 IAMPID NVARCHAR(200),
34 ObjectID NVARCHAR(200),
35 IndexID NVARCHAR(200),
36 PartitionNumber NVARCHAR(200),
37 PartitionID NVARCHAR(200),
38 iam_chain_type NVARCHAR(200),
39 PageType NVARCHAR(200),
40 IndexLevel NVARCHAR(200),
41 NextPageFID NVARCHAR(200),
42 NextPagePID NVARCHAR(200),
43 PrevPageFID NVARCHAR(200),
44 PrevPagePID NVARCHAR(200)
45 )
46 
47 TRUNCATE TABLE [dbo].[DBCCResult]
48 --
49 INSERT INTO DBCCResult EXEC ('DBCC IND(tempdb,ct1,-1) ')
50 
51 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC 
52 
53 DBCC TRACEON(3604,-1)
54 GO
55 DBCC PAGE([tempdb],1,175,3) 
56 GO
View Code

上面的表有一個特色就是:一個數據頁裏只有一條記錄
好比頁面47,你們能夠用DBCC PAGE命令看一下是否一個數據頁只有一條記錄

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE([tempdb],1,47,3) 
4 GO
  1 PAGE: (1:47)
  2 
  3 
  4 BUFFER:
  5 
  6 
  7 BUF @0x0358317C
  8 
  9 bpage = 0x15954000                   bhash = 0x00000000                   bpageno = (1:47)
 10 bdbid = 2                            breferences = 0                      bUse1 = 17140
 11 bstat = 0x1c0000b                    blog = 0x2159bbbb                    bnext = 0x00000000
 12 
 13 PAGE HEADER:
 14 
 15 
 16 Page @0x15954000
 17 
 18 m_pageId = (1:47)                    m_headerVersion = 1                  m_type = 1
 19 m_typeFlagBits = 0x4                 m_level = 0                          m_flagBits = 0x0
 20 m_objId (AllocUnitId.idObj) = 92     m_indexId (AllocUnitId.idInd) = 256  
 21 Metadata: AllocUnitId = 72057594043957248                                 
 22 Metadata: PartitionId = 72057594038976512                                 Metadata: IndexId = 1
 23 Metadata: ObjectId = 53575229        m_prevPage = (1:114)                 m_nextPage = (1:79)
 24 pminlen = 8                          m_slotCnt = 1                        m_freeCnt = 3077
 25 m_freeData = 5113                    m_reservedCnt = 0                    m_lsn = (39:284:319)
 26 m_xactReserved = 0                   m_xdesId = (0:0)                     m_ghostRecCnt = 0
 27 m_tornBits = 0                       
 28 
 29 Allocation Status
 30 
 31 GAM (1:2) = ALLOCATED                SGAM (1:3) = ALLOCATED               
 32 PFS (1:1) = 0x60 MIXED_EXT ALLOCATED   0_PCT_FULL                         DIFF (1:6) = CHANGED
 33 ML (1:7) = NOT MIN_LOGGED            
 34 
 35 Slot 0 Offset 0x60 Length 5017
 36 
 37 Record Type = PRIMARY_RECORD         Record Attributes =  NULL_BITMAP VARIABLE_COLUMNS
 38 
 39 Memory Dump @0x00BDC060
 40 
 41 00000000:   30000800 02000000 0300f802 001100990...............         
 42 00000010:   13616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa         
 43 00000020:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 44 00000030:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 45 00000040:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 46 00000050:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 47 00000060:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 48 00000070:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 49 00000080:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 50 00000090:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 51 000000A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 52 000000B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 53 000000C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 54 000000D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 55 000000E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 56 000000F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 57 00000100:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 58 00000110:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 59 00000120:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 60 00000130:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 61 00000140:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 62 00000150:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 63 00000160:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 64 00000170:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 65 00000180:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 66 00000190:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 67 000001A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 68 000001B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 69 000001C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 70 000001D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 71 000001E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 72 000001F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 73 00000200:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 74 00000210:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 75 00000220:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 76 00000230:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 77 00000240:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 78 00000250:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 79 00000260:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 80 00000270:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 81 00000280:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 82 00000290:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 83 000002A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 84 000002B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 85 000002C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 86 000002D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 87 000002E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 88 000002F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 89 00000300:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 90 00000310:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 91 00000320:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 92 00000330:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 93 00000340:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 94 00000350:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 95 00000360:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 96 00000370:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 97 00000380:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 98 00000390:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 99 000003A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
100 000003B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
101 000003C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
102 000003D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
103 000003E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
104 000003F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
105 00000400:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
106 00000410:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
107 00000420:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
108 00000430:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
109 00000440:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
110 00000450:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
111 00000460:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
112 00000470:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
113 00000480:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
114 00000490:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
115 000004A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
116 000004B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
117 000004C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
118 000004D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
119 000004E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
120 000004F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
121 00000500:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
122 00000510:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
123 00000520:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
124 00000530:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
125 00000540:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
126 00000550:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
127 00000560:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
128 00000570:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
129 00000580:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
130 00000590:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
131 000005A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
132 000005B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
133 000005C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
134 000005D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
135 000005E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
136 000005F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
137 00000600:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
138 00000610:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
139 00000620:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
140 00000630:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
141 00000640:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
142 00000650:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
143 00000660:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
144 00000670:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
145 00000680:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
146 00000690:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
147 000006A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
148 000006B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
149 000006C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
150 000006D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
151 000006E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
152 000006F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
153 00000700:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
154 00000710:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
155 00000720:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
156 00000730:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
157 00000740:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
158 00000750:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
159 00000760:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
160 00000770:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
161 00000780:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
162 00000790:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
163 000007A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
164 000007B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
165 000007C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
166 000007D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
167 000007E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
168 000007F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
169 00000800:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
170 00000810:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
171 00000820:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
172 00000830:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
173 00000840:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
174 00000850:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
175 00000860:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
176 00000870:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
177 00000880:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
178 00000890:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
179 000008A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
180 000008B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
181 000008C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
182 000008D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
183 000008E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
184 000008F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
185 00000900:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
186 00000910:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
187 00000920:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
188 00000930:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
189 00000940:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
190 00000950:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
191 00000960:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
192 00000970:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
193 00000980:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
194 00000990:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
195 000009A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
196 000009B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
197 000009C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
198 000009D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
199 000009E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
200 000009F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
201 00000A00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
202 00000A10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
203 00000A20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
204 00000A30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
205 00000A40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
206 00000A50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
207 00000A60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
208 00000A70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
209 00000A80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
210 00000A90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
211 00000AA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
212 00000AB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
213 00000AC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
214 00000AD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
215 00000AE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
216 00000AF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
217 00000B00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
218 00000B10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
219 00000B20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
220 00000B30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
221 00000B40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
222 00000B50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
223 00000B60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
224 00000B70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
225 00000B80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
226 00000B90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
227 00000BA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
228 00000BB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
229 00000BC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
230 00000BD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
231 00000BE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
232 00000BF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
233 00000C00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
234 00000C10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
235 00000C20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
236 00000C30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
237 00000C40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
238 00000C50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
239 00000C60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
240 00000C70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
241 00000C80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
242 00000C90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
243 00000CA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
244 00000CB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
245 00000CC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
246 00000CD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
247 00000CE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
248 00000CF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
249 00000D00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
250 00000D10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
251 00000D20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
252 00000D30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
253 00000D40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
254 00000D50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
255 00000D60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
256 00000D70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
257 00000D80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
258 00000D90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
259 00000DA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
260 00000DB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
261 00000DC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
262 00000DD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
263 00000DE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
264 00000DF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
265 00000E00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
266 00000E10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
267 00000E20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
268 00000E30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
269 00000E40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
270 00000E50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
271 00000E60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
272 00000E70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
273 00000E80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
274 00000E90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
275 00000EA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
276 00000EB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
277 00000EC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
278 00000ED0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
279 00000EE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
280 00000EF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
281 00000F00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
282 00000F10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
283 00000F20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
284 00000F30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
285 00000F40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
286 00000F50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
287 00000F60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
288 00000F70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
289 00000F80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
290 00000F90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
291 00000FA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
292 00000FB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
293 00000FC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
294 00000FD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
295 00000FE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
296 00000FF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
297 00001000:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
298 00001010:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
299 00001020:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
300 00001030:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
301 00001040:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
302 00001050:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
303 00001060:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
304 00001070:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
305 00001080:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
306 00001090:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
307 000010A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
308 000010B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
309 000010C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
310 000010D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
311 000010E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
312 000010F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
313 00001100:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
314 00001110:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
315 00001120:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
316 00001130:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
317 00001140:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
318 00001150:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
319 00001160:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
320 00001170:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
321 00001180:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
322 00001190:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
323 000011A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
324 000011B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
325 000011C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
326 000011D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
327 000011E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
328 000011F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
329 00001200:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
330 00001210:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
331 00001220:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
332 00001230:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
333 00001240:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
334 00001250:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
335 00001260:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
336 00001270:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
337 00001280:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
338 00001290:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
339 000012A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
340 000012B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
341 000012C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
342 000012D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
343 000012E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
344 000012F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
345 00001300:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
346 00001310:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
347 00001320:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
348 00001330:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
349 00001340:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
350 00001350:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
351 00001360:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
352 00001370:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
353 00001380:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
354 00001390:   61616161 61616161 61†††††††††††††††††aaaaaaaaa                
355 UNIQUIFIER = [NULL]                  
356 
357 Slot 0 Column 1 Offset 0x4 Length 4
358 
359 c1 = 2                               
360 
361 Slot 0 Column 2 Offset 0x11 Length 5000
362 
363 c2 = [Error converting to string (length 5000 bytes)]                     
364 
365 
366 DBCC 執行完畢。若是 DBCC 輸出了錯誤信息,請與系統管理員聯繫。
View Code

 

每一行都會指向一個數據頁面,而且記錄了數據頁面的彙集索引第一個字段的值,這裏彙集索引第一個字段就是c1了

--------------------------------------------------------------------------------------------------------------------

一個數據頁面有多條記錄

彙集索引頁面的一行記錄指向一個數據頁面,若是一個數據頁面有多行記錄怎麼辦?

那麼彙集索引頁面的一行記錄會記錄下數據頁面裏彙集索引的第一個字段的範圍值

我修改一下上面的SQL腳本,讓一個數據頁面容納4條記錄

 1 USE [tempdb]
 2 GO
 3 --DROP TABLE [dbo].[ct1]
 4 --創建彙集索引表
 5 CREATE TABLE ct1(c1 INT, c2 VARCHAR (2000));
 6 GO
 7 --創建彙集索引
 8 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
 9 GO
10  
11 --插入測試數據
12 DECLARE @a INT;
13 SELECT @a = 1;
14 WHILE (@a <= 12)
15 BEGIN
16     INSERT INTO ct1 VALUES (@a, replicate('a', 2000))
17     SELECT @a = @a + 1
18 END
19 GO
20 
21 
22 
23 
24 --查詢數據
25 SELECT * FROM ct1 
26 
27 
28 
29 CREATE TABLE DBCCResult (
30 PageFID NVARCHAR(200),
31 PagePID NVARCHAR(200),
32 IAMFID NVARCHAR(200),
33 IAMPID NVARCHAR(200),
34 ObjectID NVARCHAR(200),
35 IndexID NVARCHAR(200),
36 PartitionNumber NVARCHAR(200),
37 PartitionID NVARCHAR(200),
38 iam_chain_type NVARCHAR(200),
39 PageType NVARCHAR(200),
40 IndexLevel NVARCHAR(200),
41 NextPageFID NVARCHAR(200),
42 NextPagePID NVARCHAR(200),
43 PrevPageFID NVARCHAR(200),
44 PrevPagePID NVARCHAR(200)
45 )
46 
47 TRUNCATE TABLE [dbo].[DBCCResult]
48 --
49 INSERT INTO DBCCResult EXEC ('DBCC IND(tempdb,ct1,-1) ')
50 
51 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC 
52 
53 DBCC TRACEON(3604,-1)
54 GO
55 DBCC PAGE([tempdb],1,78,3) 
56 GO
57 DBCC PAGE([tempdb],1,115,3) 
58 GO
View Code

這個SQL腳本的特色是一個數據頁面容納4條記錄

好比數據頁面115,你們能夠用DBCC PAGE命令看一下是否一個數據頁有四條記錄

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE([tempdb],1,115,3) 
4 GO
  1 DBCC 執行完畢。若是 DBCC 輸出了錯誤信息,請與系統管理員聯繫。
  2 
  3 PAGE: (1:115)
  4 
  5 
  6 BUFFER:
  7 
  8 
  9 BUF @0x0354475C
 10 
 11 bpage = 0x16296000                   bhash = 0x00000000                   bpageno = (1:115)
 12 bdbid = 2                            breferences = 0                      bUse1 = 18204
 13 bstat = 0x2c0000b                    blog = 0x2159bbbb                    bnext = 0x00000000
 14 
 15 PAGE HEADER:
 16 
 17 
 18 Page @0x16296000
 19 
 20 m_pageId = (1:115)                   m_headerVersion = 1                  m_type = 1
 21 m_typeFlagBits = 0x4                 m_level = 0                          m_flagBits = 0x8000
 22 m_objId (AllocUnitId.idObj) = 89     m_indexId (AllocUnitId.idInd) = 256  
 23 Metadata: AllocUnitId = 72057594043760640                                 
 24 Metadata: PartitionId = 72057594038779904                                 Metadata: IndexId = 1
 25 Metadata: ObjectId = 21575115        m_prevPage = (1:90)                  m_nextPage = (0:0)
 26 pminlen = 8                          m_slotCnt = 4                        m_freeCnt = 20
 27 m_freeData = 8164                    m_reservedCnt = 0                    m_lsn = (39:282:52)
 28 m_xactReserved = 0                   m_xdesId = (0:0)                     m_ghostRecCnt = 0
 29 m_tornBits = 0                       
 30 
 31 Allocation Status
 32 
 33 GAM (1:2) = ALLOCATED                SGAM (1:3) = ALLOCATED               
 34 PFS (1:1) = 0x60 MIXED_EXT ALLOCATED   0_PCT_FULL                         DIFF (1:6) = NOT CHANGED
 35 ML (1:7) = NOT MIN_LOGGED            
 36 
 37 Slot 0 Offset 0x60 Length 2017
 38 
 39 Record Type = PRIMARY_RECORD         Record Attributes =  NULL_BITMAP VARIABLE_COLUMNS
 40 
 41 Memory Dump @0x0768C060
 42 
 43 00000000:   30000800 09000000 0300f802 001100e1 †0...............         
 44 00000010:   07616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa         
 45 00000020:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 46 00000030:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 47 00000040:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 48 00000050:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 49 00000060:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 50 00000070:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 51 00000080:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 52 00000090:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 53 000000A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 54 000000B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 55 000000C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 56 000000D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 57 000000E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 58 000000F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 59 00000100:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 60 00000110:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 61 00000120:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 62 00000130:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 63 00000140:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 64 00000150:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 65 00000160:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 66 00000170:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 67 00000180:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 68 00000190:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 69 000001A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 70 000001B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 71 000001C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 72 000001D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 73 000001E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 74 000001F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 75 00000200:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 76 00000210:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 77 00000220:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 78 00000230:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 79 00000240:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 80 00000250:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 81 00000260:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 82 00000270:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 83 00000280:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 84 00000290:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 85 000002A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 86 000002B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 87 000002C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 88 000002D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 89 000002E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 90 000002F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 91 00000300:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 92 00000310:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 93 00000320:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 94 00000330:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 95 00000340:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 96 00000350:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 97 00000360:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 98 00000370:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 99 00000380:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
100 00000390:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
101 000003A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
102 000003B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
103 000003C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
104 000003D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
105 000003E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
106 000003F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
107 00000400:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
108 00000410:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
109 00000420:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
110 00000430:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
111 00000440:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
112 00000450:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
113 00000460:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
114 00000470:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
115 00000480:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
116 00000490:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
117 000004A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
118 000004B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
119 000004C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
120 000004D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
121 000004E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
122 000004F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
123 00000500:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
124 00000510:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
125 00000520:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
126 00000530:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
127 00000540:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
128 00000550:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
129 00000560:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
130 00000570:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
131 00000580:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
132 00000590:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
133 000005A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
134 000005B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
135 000005C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
136 000005D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
137 000005E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
138 000005F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
139 00000600:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
140 00000610:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
141 00000620:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
142 00000630:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
143 00000640:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
144 00000650:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
145 00000660:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
146 00000670:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
147 00000680:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
148 00000690:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
149 000006A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
150 000006B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
151 000006C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
152 000006D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
153 000006E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
154 000006F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
155 00000700:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
156 00000710:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
157 00000720:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
158 00000730:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
159 00000740:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
160 00000750:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
161 00000760:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
162 00000770:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
163 00000780:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
164 00000790:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
165 000007A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
166 000007B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
167 000007C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
168 000007D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
169 000007E0:   61†††††††††††††††††††††††††††††††††††a                        
170 UNIQUIFIER = [NULL]                  
171 
172 Slot 0 Column 1 Offset 0x4 Length 4
173 
174 c1 = 9                               
175 
176 Slot 0 Column 2 Offset 0x11 Length 2000
177 
178 c2 = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
179 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
180 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
181 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
182 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
183 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
184 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
185 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
186 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
187 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
188 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
189 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
190 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
191 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
192 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
193 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
194 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
195 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
196 
197 Slot 1 Offset 0x841 Length 2017
198 
199 Record Type = PRIMARY_RECORD         Record Attributes =  NULL_BITMAP VARIABLE_COLUMNS
200 
201 Memory Dump @0x0768C841
202 
203 00000000:   30000800 0a000000 0300f802 001100e1 †0...............         
204 00000010:   07616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa         
205 00000020:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
206 00000030:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
207 00000040:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
208 00000050:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
209 00000060:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
210 00000070:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
211 00000080:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
212 00000090:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
213 000000A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
214 000000B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
215 000000C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
216 000000D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
217 000000E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
218 000000F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
219 00000100:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
220 00000110:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
221 00000120:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
222 00000130:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
223 00000140:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
224 00000150:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
225 00000160:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
226 00000170:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
227 00000180:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
228 00000190:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
229 000001A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
230 000001B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
231 000001C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
232 000001D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
233 000001E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
234 000001F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
235 00000200:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
236 00000210:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
237 00000220:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
238 00000230:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
239 00000240:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
240 00000250:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
241 00000260:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
242 00000270:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
243 00000280:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
244 00000290:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
245 000002A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
246 000002B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
247 000002C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
248 000002D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
249 000002E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
250 000002F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
251 00000300:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
252 00000310:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
253 00000320:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
254 00000330:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
255 00000340:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
256 00000350:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
257 00000360:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
258 00000370:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
259 00000380:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
260 00000390:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
261 000003A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
262 000003B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
263 000003C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
264 000003D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
265 000003E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
266 000003F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
267 00000400:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
268 00000410:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
269 00000420:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
270 00000430:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
271 00000440:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
272 00000450:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
273 00000460:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
274 00000470:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
275 00000480:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
276 00000490:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
277 000004A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
278 000004B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
279 000004C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
280 000004D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
281 000004E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
282 000004F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
283 00000500:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
284 00000510:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
285 00000520:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
286 00000530:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
287 00000540:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
288 00000550:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
289 00000560:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
290 00000570:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
291 00000580:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
292 00000590:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
293 000005A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
294 000005B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
295 000005C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
296 000005D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
297 000005E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
298 000005F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
299 00000600:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
300 00000610:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
301 00000620:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
302 00000630:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
303 00000640:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
304 00000650:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
305 00000660:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
306 00000670:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
307 00000680:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
308 00000690:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
309 000006A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
310 000006B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
311 000006C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
312 000006D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
313 000006E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
314 000006F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
315 00000700:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
316 00000710:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
317 00000720:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
318 00000730:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
319 00000740:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
320 00000750:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
321 00000760:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
322 00000770:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
323 00000780:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
324 00000790:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
325 000007A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
326 000007B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
327 000007C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
328 000007D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
329 000007E0:   61†††††††††††††††††††††††††††††††††††a                        
330 UNIQUIFIER = [NULL]                  
331 
332 Slot 1 Column 1 Offset 0x4 Length 4
333 
334 c1 = 10                              
335 
336 Slot 1 Column 2 Offset 0x11 Length 2000
337 
338 c2 = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
339 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
340 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
341 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
342 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
343 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
344 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
345 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
346 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
347 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
348 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
349 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
350 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
351 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
352 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
353 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
354 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
355 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
356 
357 Slot 2 Offset 0x1022 Length 2017
358 
359 Record Type = PRIMARY_RECORD         Record Attributes =  NULL_BITMAP VARIABLE_COLUMNS
360 
361 Memory Dump @0x0768D022
362 
363 00000000:   30000800 0b000000 0300f802 001100e1 †0...............         
364 00000010:   07616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa         
365 00000020:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
366 00000030:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
367 00000040:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
368 00000050:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
369 00000060:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
370 00000070:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
371 00000080:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
372 00000090:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
373 000000A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
374 000000B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
375 000000C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
376 000000D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
377 000000E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
378 000000F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
379 00000100:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
380 00000110:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
381 00000120:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
382 00000130:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
383 00000140:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
384 00000150:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
385 00000160:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
386 00000170:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
387 00000180:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
388 00000190:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
389 000001A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
390 000001B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
391 000001C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
392 000001D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
393 000001E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
394 000001F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
395 00000200:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
396 00000210:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
397 00000220:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
398 00000230:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
399 00000240:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
400 00000250:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
401 00000260:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
402 00000270:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
403 00000280:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
404 00000290:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
405 000002A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
406 000002B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
407 000002C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
408 000002D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
409 000002E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
410 000002F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
411 00000300:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
412 00000310:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
413 00000320:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
414 00000330:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
415 00000340:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
416 00000350:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
417 00000360:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
418 00000370:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
419 00000380:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
420 00000390:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
421 000003A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
422 000003B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
423 000003C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
424 000003D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
425 000003E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
426 000003F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
427 00000400:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
428 00000410:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
429 00000420:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
430 00000430:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
431 00000440:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
432 00000450:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
433 00000460:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
434 00000470:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
435 00000480:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
436 00000490:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
437 000004A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
438 000004B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
439 000004C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
440 000004D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
441 000004E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
442 000004F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
443 00000500:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
444 00000510:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
445 00000520:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
446 00000530:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
447 00000540:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
448 00000550:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
449 00000560:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
450 00000570:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
451 00000580:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
452 00000590:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
453 000005A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
454 000005B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
455 000005C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
456 000005D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
457 000005E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
458 000005F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
459 00000600:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
460 00000610:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
461 00000620:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
462 00000630:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
463 00000640:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
464 00000650:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
465 00000660:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
466 00000670:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
467 00000680:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
468 00000690:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
469 000006A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
470 000006B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
471 000006C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
472 000006D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
473 000006E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
474 000006F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
475 00000700:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
476 00000710:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
477 00000720:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
478 00000730:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
479 00000740:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
480 00000750:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
481 00000760:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
482 00000770:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
483 00000780:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
484 00000790:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
485 000007A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
486 000007B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
487 000007C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
488 000007D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
489 000007E0:   61†††††††††††††††††††††††††††††††††††a                        
490 UNIQUIFIER = [NULL]                  
491 
492 Slot 2 Column 1 Offset 0x4 Length 4
493 
494 c1 = 11                              
495 
496 Slot 2 Column 2 Offset 0x11 Length 2000
497 
498 c2 = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
499 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
500 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
501 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
502 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
503 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
504 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
505 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
506 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
507 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
508 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
509 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
510 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
511 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
512 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
513 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
514 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
515 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
516 
517 Slot 3 Offset 0x1803 Length 2017
518 
519 Record Type = PRIMARY_RECORD         Record Attributes =  NULL_BITMAP VARIABLE_COLUMNS
520 
521 Memory Dump @0x0768D803
522 
523 00000000:   30000800 0c000000 0300f802 001100e1 †0...............         
524 00000010:   07616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa         
525 00000020:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
526 00000030:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
527 00000040:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
528 00000050:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
529 00000060:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
530 00000070:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
531 00000080:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
532 00000090:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
533 000000A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
534 000000B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
535 000000C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
536 000000D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
537 000000E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
538 000000F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
539 00000100:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
540 00000110:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
541 00000120:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
542 00000130:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
543 00000140:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
544 00000150:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
545 00000160:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
546 00000170:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
547 00000180:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
548 00000190:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
549 000001A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
550 000001B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
551 000001C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
552 000001D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
553 000001E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
554 000001F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
555 00000200:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
556 00000210:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
557 00000220:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
558 00000230:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
559 00000240:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
560 00000250:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
561 00000260:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
562 00000270:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
563 00000280:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
564 00000290:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
565 000002A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
566 000002B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
567 000002C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
568 000002D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
569 000002E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
570 000002F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
571 00000300:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
572 00000310:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
573 00000320:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
574 00000330:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
575 00000340:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
576 00000350:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
577 00000360:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
578 00000370:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
579 00000380:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
580 00000390:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
581 000003A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
582 000003B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
583 000003C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
584 000003D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
585 000003E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
586 000003F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
587 00000400:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
588 00000410:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
589 00000420:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
590 00000430:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
591 00000440:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
592 00000450:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
593 00000460:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
594 00000470:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
595 00000480:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
596 00000490:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
597 000004A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
598 000004B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
599 000004C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
600 000004D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
601 000004E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
602 000004F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
603 00000500:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
604 00000510:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
605 00000520:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
606 00000530:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
607 00000540:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
608 00000550:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
609 00000560:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
610 00000570:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
611 00000580:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
612 00000590:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
613 000005A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
614 000005B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
615 000005C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
616 000005D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
617 000005E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
618 000005F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
619 00000600:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
620 00000610:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
621 00000620:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
622 00000630:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
623 00000640:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
624 00000650:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
625 00000660:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
626 00000670:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
627 00000680:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
628 00000690:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
629 000006A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
630 000006B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
631 000006C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
632 000006D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
633 000006E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
634 000006F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
635 00000700:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
636 00000710:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
637 00000720:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
638 00000730:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
639 00000740:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
640 00000750:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
641 00000760:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
642 00000770:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
643 00000780:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
644 00000790:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
645 000007A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
646 000007B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
647 000007C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
648 000007D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
649 000007E0:   61†††††††††††††††††††††††††††††††††††a                        
650 UNIQUIFIER = [NULL]                  
651 
652 Slot 3 Column 1 Offset 0x4 Length 4
653 
654 c1 = 12                              
655 
656 Slot 3 Column 2 Offset 0x11 Length 2000
657 
658 c2 = aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
659 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
660 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
661 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
662 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
663 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
664 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
665 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
666 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
667 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
668 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
669 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
670 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
671 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
672 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
673 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
674 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
675 aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
676 
677 
678 DBCC 執行完畢。若是 DBCC 輸出了錯誤信息,請與系統管理員聯繫。
View Code

一個數據頁面有多條記錄的狀況下,彙集索引頁面的每一行會記錄數據頁面的彙集索引第一個字段的在這個數據頁面裏的範圍

這裏彙集索引頁面的每行記錄的狀況以下:

數據頁面175裏彙集索引第一個字段c1的範圍是1~4

數據頁面90裏彙集索引第一個字段c1的範圍是5~8

數據頁面115裏彙集索引第一個字段c1的範圍是9~12

-----------------------------------------------------------------------------------

你們平時可能聽到最多的就是全表掃描彙集索引掃描非彙集索引掃描遠程掃描列存儲索引掃描遠程索引掃描

其實ALLOCATION SCANRANGE SCAN是針對全表掃描、彙集索引掃描、非彙集索引掃描這三個掃描的

在SSMS裏查看執行計劃的時候你們只會看到全表掃描、彙集索引掃描、非彙集索引掃描,可是SQLSERVER實際去掃描記錄的時候

實際用到的是ALLOCATION SCAN和RANGE SCAN這兩種掃描方式,而這兩種掃描方式是不會顯示在執行計劃裏的


彙集索引表

range scan的意思是說:根據彙集索引/非彙集索引的第一個字段的排序順序依次去掃描每一行表中的記錄

彙集索引表的range scan

一個數據頁面只有一條記錄的狀況

SQL腳本以下:

 1 USE [tempdb]
 2 GO
 3 --DROP TABLE [dbo].[ct1]
 4 --創建彙集索引表
 5 CREATE TABLE ct1(c1 INT, c2 VARCHAR (8000));
 6 GO
 7 --創建彙集索引
 8 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
 9 GO
10  
11 --插入測試數據
12 DECLARE @a INT;
13 SELECT @a = 1;
14 WHILE (@a <= 3)
15 BEGIN
16     INSERT INTO ct1 VALUES (@a, replicate('a', 8000))
17     SELECT @a = @a + 1
18 END
19 GO
20 
21 
22 
23 
24 --查詢數據
25 SELECT * FROM ct1 
26 
27 
28 
29 CREATE TABLE DBCCResult (
30 PageFID NVARCHAR(200),
31 PagePID NVARCHAR(200),
32 IAMFID NVARCHAR(200),
33 IAMPID NVARCHAR(200),
34 ObjectID NVARCHAR(200),
35 IndexID NVARCHAR(200),
36 PartitionNumber NVARCHAR(200),
37 PartitionID NVARCHAR(200),
38 iam_chain_type NVARCHAR(200),
39 PageType NVARCHAR(200),
40 IndexLevel NVARCHAR(200),
41 NextPageFID NVARCHAR(200),
42 NextPagePID NVARCHAR(200),
43 PrevPageFID NVARCHAR(200),
44 PrevPagePID NVARCHAR(200)
45 )
46 
47 TRUNCATE TABLE [dbo].[DBCCResult]
48 --
49 INSERT INTO DBCCResult EXEC ('DBCC IND(tempdb,ct1,-1) ')
50 
51 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC 
52 
53 DBCC TRACEON(3604,-1)
54 GO
55 DBCC PAGE([tempdb],1,90,3) 
56 GO
View Code

SQLSERVER掃描記錄的方式能夠用下面的圖來表示

SQLSERVER根據c1(key)列向下掃描,第一行c1(key)列的值爲1,對應的數據頁是45,而後到數據頁45把記錄讀出來

而後繼續向下掃描,第二行c1(key)列的值爲2,對應的數據頁是115,而後到數據頁115把記錄讀出來

而後繼續向下掃描,第三行c1(key)列的值爲3,對應的數據頁是121,而後到數據頁121把記錄讀出來

----------------------------------------------------------------------------------------

一個數據頁面有多條記錄的狀況

咱們重啓一下SQLSERVER服務,清空一下tempdb數據庫,再從新創建ct1表

SQL腳本以下:

 1 USE [tempdb]
 2 GO
 3 
 4 --創建彙集索引表
 5 CREATE TABLE ct1(c1 INT, c2 VARCHAR (2000));
 6 GO
 7 --創建彙集索引
 8 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
 9 GO
10  
11 --插入測試數據
12 DECLARE @a INT;
13 SELECT @a = 1;
14 WHILE (@a <= 12)
15 BEGIN
16     INSERT INTO ct1 VALUES (@a, replicate('a', 2000))
17     SELECT @a = @a + 1
18 END
19 GO
20 
21 
22 
23 
24 --查詢數據
25 SELECT * FROM ct1 
26 
27 
28 
29 CREATE TABLE DBCCResult (
30 PageFID NVARCHAR(200),
31 PagePID NVARCHAR(200),
32 IAMFID NVARCHAR(200),
33 IAMPID NVARCHAR(200),
34 ObjectID NVARCHAR(200),
35 IndexID NVARCHAR(200),
36 PartitionNumber NVARCHAR(200),
37 PartitionID NVARCHAR(200),
38 iam_chain_type NVARCHAR(200),
39 PageType NVARCHAR(200),
40 IndexLevel NVARCHAR(200),
41 NextPageFID NVARCHAR(200),
42 NextPagePID NVARCHAR(200),
43 PrevPageFID NVARCHAR(200),
44 PrevPagePID NVARCHAR(200)
45 )
46 
47 TRUNCATE TABLE [dbo].[DBCCResult]
48 --
49 INSERT INTO DBCCResult EXEC ('DBCC IND(tempdb,ct1,-1) ')
50 
51 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC 
52 
53 DBCC TRACEON(3604,-1)
54 GO
55 DBCC PAGE([tempdb],1,175,3) 
56 GO
View Code

SQLSERVER掃描記錄的方式能夠用下面的圖來表示

SQLSERVER根據c1(key)列向下掃描,第一行c1(key)列的範圍值爲1~4,對應的數據頁是115,

而後到數據頁115裏順着c1列的值向下掃描,由於數據頁面在創建彙集索引的時候,都已經根據c1列的值排好序了,只須要根據

c1列的值向下掃描並讀取出記錄就能夠了

數據頁115裏的記錄掃描並讀取完畢,而後回到彙集索引頁面,在彙集索引頁的第二行c1(key)列的範圍值爲5~8,

對應的數據頁是45,而後到數據頁45裏順着c1列的值向下掃描

數據頁45裏的記錄掃描並讀取完畢,而後回到彙集索引頁面,在彙集索引頁的第三行c1(key)列的範圍值爲9~12,

對應的數據頁是78,而後到數據頁78裏順着c1列的值向下掃描

 

彙集索引表的range scan的過程就是這樣,如此類推

---------------------------------------------------------------------------------------------------

彙集索引表的allocation scan

allocation scan的意思是說:在新建表並插入數據的時候,根據表中的IAM頁面分配數據表的頁面的前後順序,來讀取表中的記錄

在繼續往下看以前,請先看一下我以前寫的文章:SQLSERVER新建表的時候頁面分配狀況是怎樣的?

咱們新建一個數據庫,以便更容易觀察表的頁面分配狀況

SQL腳本以下:

 1 use master
 2 go
 3 
 4 DROP DATABASE allocationordertest
 5 GO
 6 CREATE DATABASE allocationordertest
 7 GO
 8 
 9 
10 USE allocationordertest
11 GO
12  
13 ------------------------------------
14 CREATE TABLE DBCCResult (
15 PageFID NVARCHAR(200),
16 PagePID NVARCHAR(200),
17 IAMFID NVARCHAR(200),
18 IAMPID NVARCHAR(200),
19 ObjectID NVARCHAR(200),
20 IndexID NVARCHAR(200),
21 PartitionNumber NVARCHAR(200),
22 PartitionID NVARCHAR(200),
23 iam_chain_type NVARCHAR(200),
24 PageType NVARCHAR(200),
25 IndexLevel NVARCHAR(200),
26 NextPageFID NVARCHAR(200),
27 NextPagePID NVARCHAR(200),
28 PrevPageFID NVARCHAR(200),
29 PrevPagePID NVARCHAR(200)
30 )
31  ------------------------彙集索引表----------------------------------------
32  --創建彙集索引表
33 CREATE TABLE ct1(c1 INT, c2 VARCHAR (8000));
34 GO
35 --創建彙集索引
36 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
37 GO
38 
39 --插入測試數據
40 DECLARE @a INT;
41 SELECT @a = 10;
42 WHILE (@a < 100)
43 BEGIN
44     INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
45     SELECT @a = @a + 1
46 END;
47 -------------------------------
48 DECLARE @a INT;
49 SELECT @a = 1;
50 WHILE (@a < 10)
51 BEGIN
52     INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
53     SELECT @a = @a + 1
54 END;
View Code

咱們新建的ct1表的一條記錄佔用一個數據頁,在插入數據到表中的時候,第一次插入c1列的值爲10~99,第二次插入c1列的值爲1~9,

咱們查詢一下數據:

1 --查詢數據
2 SELECT * FROM ct1;

能夠看到數據按照range scan的方式,根據c1列的值排好序並顯示出來

咱們用WITH (NOLOCK)這個query hint來再查詢一下數據

1 --查詢數據
2 SELECT * FROM ct1 WITH (NOLOCK);

數據按照 數據插入的順序來顯示出來:在插入數據到表中的時候,第一次插入c1列的值爲10~99,第二次插入c1列的值爲1~9

select出來的數據也是按照插入的順序顯示的

爲什麼會這樣???

你們能夠看一下這篇文章:爲何NOLOCK反而返回更少的數據

 

因爲篇幅的關係,這裏就不詳細討論爲什麼會出現allocation scan了,咱們下面繼續講allocation scan的原理

----------------------------------------------------------------------------------

下面咱們看一下頁面的分配狀況

先找出c1的值爲99存放在哪一個數據頁面

因爲頁面分配是從小到大分配的,咱們使用下面的SQL語句

1 TRUNCATE TABLE [dbo].[DBCCResult]
2 
3 INSERT INTO DBCCResult EXEC ('DBCC IND(allocationordertest,ct1,-1) ')
4 
5 SELECT * FROM [dbo].[DBCCResult]  ORDER BY [PageType] DESC 

根據數據頁面的ID的大小從小到大排列,第一次插入測試數據的時候插入c1列的值爲10~99,就是說從DBCCResult表select出來的結果裏

從第一行開始數到第99-10+2=92行的那個頁面應該就是99存放的那個頁面,爲什麼是第92行?由於查詢語句中沒有排除掉IAM頁和彙集索引頁

IAM頁和彙集索引頁各佔一個頁面

1 SELECT * FROM [dbo].[DBCCResult]  ORDER BY [PageType] DESC 

 

咱們看一下258這個數據頁

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE(allocationordertest,1,258,3) 
4 GO
View Code
  1 DBCC 執行完畢。若是 DBCC 輸出了錯誤信息,請與系統管理員聯繫。
  2 
  3 PAGE: (1:258)
  4 
  5 
  6 BUFFER:
  7 
  8 
  9 BUF @0x036444D4
 10 
 11 bpage = 0x19D56000                   bhash = 0x00000000                   bpageno = (1:258)
 12 bdbid = 11                           breferences = 1                      bUse1 = 30485
 13 bstat = 0xc0010b                     blog = 0x32121bb                     bnext = 0x00000000
 14 
 15 PAGE HEADER:
 16 
 17 
 18 Page @0x19D56000
 19 
 20 m_pageId = (1:258)                   m_headerVersion = 1                  m_type = 1
 21 m_typeFlagBits = 0x4                 m_level = 0                          m_flagBits = 0xc000
 22 m_objId (AllocUnitId.idObj) = 84     m_indexId (AllocUnitId.idInd) = 256  
 23 Metadata: AllocUnitId = 72057594043432960                                 
 24 Metadata: PartitionId = 72057594038452224                                 Metadata: IndexId = 1
 25 Metadata: ObjectId = 2089058478      m_prevPage = (1:257)                 m_nextPage = (0:0)
 26 pminlen = 8                          m_slotCnt = 1                        m_freeCnt = 3077
 27 m_freeData = 5113                    m_reservedCnt = 0                    m_lsn = (42:310:9)
 28 m_xactReserved = 0                   m_xdesId = (0:0)                     m_ghostRecCnt = 0
 29 m_tornBits = 0                       
 30 
 31 Allocation Status
 32 
 33 GAM (1:2) = ALLOCATED                SGAM (1:3) = NOT ALLOCATED           PFS (1:1) = 0x40 ALLOCATED   0_PCT_FULL
 34 DIFF (1:6) = CHANGED                 ML (1:7) = NOT MIN_LOGGED            
 35 
 36 Slot 0 Offset 0x60 Length 5017
 37 
 38 Record Type = PRIMARY_RECORD         Record Attributes =  NULL_BITMAP VARIABLE_COLUMNS
 39 
 40 Memory Dump @0x077EC060
 41 
 42 00000000:   30000800 63000000 0300f802 001100990...c...........         
 43 00000010:   13616161 61616161 61616161 61616161 †.aaaaaaaaaaaaaaa         
 44 00000020:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 45 00000030:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 46 00000040:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 47 00000050:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 48 00000060:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 49 00000070:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 50 00000080:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 51 00000090:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 52 000000A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 53 000000B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 54 000000C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 55 000000D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 56 000000E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 57 000000F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 58 00000100:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 59 00000110:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 60 00000120:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 61 00000130:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 62 00000140:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 63 00000150:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 64 00000160:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 65 00000170:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 66 00000180:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 67 00000190:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 68 000001A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 69 000001B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 70 000001C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 71 000001D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 72 000001E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 73 000001F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 74 00000200:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 75 00000210:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 76 00000220:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 77 00000230:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 78 00000240:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 79 00000250:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 80 00000260:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 81 00000270:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 82 00000280:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 83 00000290:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 84 000002A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 85 000002B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 86 000002C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 87 000002D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 88 000002E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 89 000002F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 90 00000300:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 91 00000310:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 92 00000320:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 93 00000330:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 94 00000340:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 95 00000350:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 96 00000360:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 97 00000370:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 98 00000380:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
 99 00000390:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
100 000003A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
101 000003B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
102 000003C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
103 000003D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
104 000003E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
105 000003F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
106 00000400:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
107 00000410:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
108 00000420:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
109 00000430:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
110 00000440:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
111 00000450:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
112 00000460:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
113 00000470:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
114 00000480:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
115 00000490:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
116 000004A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
117 000004B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
118 000004C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
119 000004D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
120 000004E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
121 000004F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
122 00000500:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
123 00000510:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
124 00000520:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
125 00000530:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
126 00000540:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
127 00000550:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
128 00000560:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
129 00000570:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
130 00000580:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
131 00000590:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
132 000005A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
133 000005B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
134 000005C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
135 000005D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
136 000005E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
137 000005F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
138 00000600:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
139 00000610:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
140 00000620:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
141 00000630:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
142 00000640:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
143 00000650:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
144 00000660:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
145 00000670:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
146 00000680:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
147 00000690:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
148 000006A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
149 000006B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
150 000006C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
151 000006D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
152 000006E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
153 000006F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
154 00000700:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
155 00000710:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
156 00000720:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
157 00000730:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
158 00000740:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
159 00000750:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
160 00000760:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
161 00000770:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
162 00000780:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
163 00000790:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
164 000007A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
165 000007B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
166 000007C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
167 000007D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
168 000007E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
169 000007F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
170 00000800:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
171 00000810:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
172 00000820:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
173 00000830:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
174 00000840:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
175 00000850:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
176 00000860:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
177 00000870:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
178 00000880:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
179 00000890:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
180 000008A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
181 000008B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
182 000008C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
183 000008D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
184 000008E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
185 000008F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
186 00000900:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
187 00000910:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
188 00000920:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
189 00000930:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
190 00000940:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
191 00000950:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
192 00000960:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
193 00000970:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
194 00000980:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
195 00000990:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
196 000009A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
197 000009B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
198 000009C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
199 000009D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
200 000009E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
201 000009F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
202 00000A00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
203 00000A10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
204 00000A20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
205 00000A30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
206 00000A40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
207 00000A50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
208 00000A60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
209 00000A70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
210 00000A80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
211 00000A90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
212 00000AA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
213 00000AB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
214 00000AC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
215 00000AD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
216 00000AE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
217 00000AF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
218 00000B00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
219 00000B10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
220 00000B20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
221 00000B30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
222 00000B40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
223 00000B50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
224 00000B60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
225 00000B70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
226 00000B80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
227 00000B90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
228 00000BA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
229 00000BB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
230 00000BC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
231 00000BD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
232 00000BE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
233 00000BF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
234 00000C00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
235 00000C10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
236 00000C20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
237 00000C30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
238 00000C40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
239 00000C50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
240 00000C60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
241 00000C70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
242 00000C80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
243 00000C90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
244 00000CA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
245 00000CB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
246 00000CC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
247 00000CD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
248 00000CE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
249 00000CF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
250 00000D00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
251 00000D10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
252 00000D20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
253 00000D30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
254 00000D40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
255 00000D50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
256 00000D60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
257 00000D70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
258 00000D80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
259 00000D90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
260 00000DA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
261 00000DB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
262 00000DC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
263 00000DD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
264 00000DE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
265 00000DF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
266 00000E00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
267 00000E10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
268 00000E20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
269 00000E30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
270 00000E40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
271 00000E50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
272 00000E60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
273 00000E70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
274 00000E80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
275 00000E90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
276 00000EA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
277 00000EB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
278 00000EC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
279 00000ED0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
280 00000EE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
281 00000EF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
282 00000F00:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
283 00000F10:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
284 00000F20:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
285 00000F30:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
286 00000F40:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
287 00000F50:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
288 00000F60:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
289 00000F70:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
290 00000F80:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
291 00000F90:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
292 00000FA0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
293 00000FB0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
294 00000FC0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
295 00000FD0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
296 00000FE0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
297 00000FF0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
298 00001000:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
299 00001010:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
300 00001020:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
301 00001030:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
302 00001040:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
303 00001050:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
304 00001060:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
305 00001070:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
306 00001080:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
307 00001090:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
308 000010A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
309 000010B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
310 000010C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
311 000010D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
312 000010E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
313 000010F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
314 00001100:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
315 00001110:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
316 00001120:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
317 00001130:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
318 00001140:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
319 00001150:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
320 00001160:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
321 00001170:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
322 00001180:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
323 00001190:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
324 000011A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
325 000011B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
326 000011C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
327 000011D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
328 000011E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
329 000011F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
330 00001200:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
331 00001210:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
332 00001220:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
333 00001230:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
334 00001240:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
335 00001250:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
336 00001260:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
337 00001270:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
338 00001280:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
339 00001290:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
340 000012A0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
341 000012B0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
342 000012C0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
343 000012D0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
344 000012E0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
345 000012F0:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
346 00001300:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
347 00001310:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
348 00001320:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
349 00001330:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
350 00001340:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
351 00001350:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
352 00001360:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
353 00001370:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
354 00001380:   61616161 61616161 61616161 61616161 †aaaaaaaaaaaaaaaa         
355 00001390:   61616161 61616161 61†††††††††††††††††aaaaaaaaa                
356 UNIQUIFIER = [NULL]                  
357 
358 Slot 0 Column 1 Offset 0x4 Length 4
359 
360 c1 = 99                              
361 
362 Slot 0 Column 2 Offset 0x11 Length 5000
363 
364 c2 = [Error converting to string (length 5000 bytes)]                     
365 
366 
367 DBCC 執行完畢。若是 DBCC 輸出了錯誤信息,請與系統管理員聯繫。
View Code

恰好c1的值就是99

咱們看一下IAM頁面

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE(allocationordertest,1,80,3) 
4 GO
View Code

ct1表從45這個頁面開始,一直到數據頁272這個區間裏進行分配,而ct1表的最後一個數據頁是267

再看一下DBCCRESULT的結果

1 SELECT * FROM [dbo].[DBCCResult]  ORDER BY [PageType] DESC 

若是你們從頁面259到267逐個逐個頁面進行DBCC PAGE的話就會看到259~267頁面裏存放的c1值就是1~9

可是,數據頁面45存放的c1值不是10,數據頁77裏存放的c1值纔是10

爲什麼會這樣??

由於新建表的時候,表數據先存放在混合區,放在混合區裏的數據頁的裏數據的排序具備不肯定性

而當表數據超過8個頁面的時候,數據開始在統一區分配,這時候統一區裏的數據頁的裏數據的排序就會按照插入的順序了

更詳細的看我以前寫的文章:SQLSERVER新建表的時候頁面分配狀況是怎樣的?

咱們藉助Internals Viewer從宏觀的角度看一下頁面分配狀況

咱們關注紫色的小方格,紫色的小方格表明ct1表

上圖用棕色筆畫住的區域裏的紫色的小方格表示SQLSERVER第一次分配的頁面

上圖用深綠色筆畫住的區域裏的紫色的小方格表示SQLSERVER第二次分配的頁面

 

在這個小節的開頭,allocation scan的解釋是:

在新建表並插入數據的時候,根據表中的IAM頁面分配數據表的頁面的前後順序

來讀取表中的記錄

SQLSERVER第一次分配的頁面從45頁開始一直到258,這些頁面裏c1的值是:10~99

第二次分配的頁面從259開始一直到267,這些頁面裏c1的值是1~9

因此,使用下面SQL語句,查詢處理的結果的c1值先是10~99,而後是1~9

1 --查詢數據
2 SELECT * FROM ct1 WITH (NOLOCK);

 

 ----------------------------------------------------------------------------------------

 咱們再來作一個實驗,修改一下上面的SQL腳本

 先drop掉allocationordertest數據庫,再從新創建,SQL腳本以下:

 1 use master
 2 go
 3 
 4 DROP DATABASE allocationordertest
 5 GO
 6 CREATE DATABASE allocationordertest
 7 GO
 8 
 9 
10 USE allocationordertest
11 GO
12  
13 ------------------------------------
14 CREATE TABLE DBCCResult (
15 PageFID NVARCHAR(200),
16 PagePID NVARCHAR(200),
17 IAMFID NVARCHAR(200),
18 IAMPID NVARCHAR(200),
19 ObjectID NVARCHAR(200),
20 IndexID NVARCHAR(200),
21 PartitionNumber NVARCHAR(200),
22 PartitionID NVARCHAR(200),
23 iam_chain_type NVARCHAR(200),
24 PageType NVARCHAR(200),
25 IndexLevel NVARCHAR(200),
26 NextPageFID NVARCHAR(200),
27 NextPagePID NVARCHAR(200),
28 PrevPageFID NVARCHAR(200),
29 PrevPagePID NVARCHAR(200)
30 )
31  ------------------------彙集索引表----------------------------------------
32  --創建彙集索引表
33 CREATE TABLE ct1(c1 INT, c2 VARCHAR (8000));
34 GO
35 --創建彙集索引
36 CREATE CLUSTERED INDEX t1c1 ON ct1(c1);
37 GO
38  
39 --插入測試數據
40 DECLARE @a INT;
41 SELECT @a = 21;
42 WHILE (@a <= 100)
43 BEGIN
44     INSERT INTO ct1 VALUES (@a, replicate('a', 8000))
45     SELECT @a = @a + 1
46 END
47 GO
48 
49 
50 DECLARE @a INT;
51 SELECT @a = 11;
52 WHILE (@a <= 20)
53 BEGIN
54     INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
55     SELECT @a = @a + 1
56 END
57 GO
58  
59 DECLARE @a INT;
60 SELECT @a = 1;
61 WHILE (@a <= 10)
62 BEGIN
63     INSERT INTO ct1 VALUES (@a, replicate('a', 5000))
64     SELECT @a = @a + 1
65 END
66 GO
View Code

 在插入數據到表中的時候,第一次插入c1列的值爲21~100,第二次插入c1列的值爲11~20,第三次插入c1列的值爲1~10

 查詢數據

1 --查詢數據
2 SELECT * FROM ct1 with(nolock)

查詢出來c1列的結果是21~100,11~20,1~10

這裏咱們要找c1的值爲2一、100、十一、20、一、10這些c1值所在的頁面

彙集索引頁面爲89

IAM頁面爲80

先看一下IAM頁面吧

1 DBCC TRACEON(3604,-1)
2 GO
3 DBCC PAGE(allocationordertest,1,80,3) 
4 GO
View Code

表的頁面分配區間是45~271,這裏爲了節省時間,我就不左計算右計算了

我這裏估算2一、100、十一、20、一、10這些c1值所在的頁面,而後逐個頁面進行DBCC PAGE

查找到的結果:

21存放在數據頁77

100存放在數據頁248

11存放在數據頁249

20存放在數據頁258

1存放在數據頁259

10存放在數據頁268

就是說三次分配的數據頁分別是

第一次分配的頁面是:45~248

第二次分配的頁面是:249~258

第三次分配的頁面是:259~268

爲什麼須要先插入21~100的記錄,然再插入剩餘的記錄?

由於SQLSERVER在新建表並開始分配頁面的時候,分配在混合區裏的頁面沒有排序肯定性,

因此須要先要插入21~100的記錄,讓SQLSERVER分配的頁面超過8頁

具體能夠看一下:SQLSERVER新建表的時候頁面分配狀況是怎樣的?

 

 


堆表

因爲堆表沒有索引頁面,因此不加order by的狀況下老是以allocation scan的方式掃描數據

SQL腳本以下:

 1 -----------------------------------堆表---------------------------------------------------
 2 --堆表永遠使用allocation scan  除非加order by 將數據存入到tempdb進行排序
 3 --創建堆表
 4 USE [allocationordertest]
 5 GO
 6 CREATE TABLE t1(c1 INT, c2 VARCHAR (8000));
 7 GO
 8 
 9 
10 --插入測試數據
11 DECLARE @a INT;
12 SELECT @a = 21;
13 WHILE (@a <= 100)
14 BEGIN
15     INSERT INTO t1 VALUES (@a, replicate('a', 8000))
16     SELECT @a = @a + 1
17 END
18 GO
19 
20 
21 DECLARE @a INT;
22 SELECT @a = 11;
23 WHILE (@a <= 20)
24 BEGIN
25     INSERT INTO t1 VALUES (@a, replicate('a', 5000))
26     SELECT @a = @a + 1
27 END
28 GO
29  
30 DECLARE @a INT;
31 SELECT @a = 1;
32 WHILE (@a <= 10)
33 BEGIN
34     INSERT INTO t1 VALUES (@a, replicate('a', 5000))
35     SELECT @a = @a + 1
36 END
37 GO
38 
39 --查詢數據
40 SELECT * FROM t1 
View Code

咱們依然使用allocationordertest數據庫

查詢數據,注意不要加order by和with (nolock)

1 --查詢數據
2 SELECT * FROM t1 

查詢出的結果是21~100,11~20,1~10

堆表的allocation scan和彙集索引表的allocation scan是同樣的,這裏就不詳細敘述了


 

非彙集索引表

SQL腳本以下:

 1 ----------------------非彙集索引表--------------------------------------------
 2 --創建非彙集索引表
 3 USE [allocationordertest]
 4 GO
 5 CREATE TABLE nct1(c1 INT, c2 VARCHAR (8000));
 6 GO
 7 --創建非彙集索引
 8 CREATE  INDEX nt1c1 ON nct1(c1);
 9 GO
10  
11 --插入數據
12 DECLARE @a INT;
13 SELECT @a = 21;
14 WHILE (@a <= 100)
15 BEGIN
16     INSERT INTO nct1 VALUES (@a, replicate('a', 5000))
17     SELECT @a = @a + 1
18 END
19 GO
20 
21 
22 DECLARE @a INT;
23 SELECT @a = 11;
24 WHILE (@a <= 20)
25 BEGIN
26     INSERT INTO nct1 VALUES (@a, replicate('a', 5000))
27     SELECT @a = @a + 1
28 END
29 GO
30  
31 DECLARE @a INT;
32 SELECT @a = 1;
33 WHILE (@a <= 10)
34 BEGIN
35     INSERT INTO nct1 VALUES (@a, replicate('a', 5000))
36     SELECT @a = @a + 1
37 END
38 GO
View Code

咱們依然使用allocationordertest數據庫

查詢數據 都不用加with(nolock)

1 --allocation scan
2 SELECT * FROM nct1 

查詢c1列的結果是:21~100,11~20,1~10

1 --range scan
2 SELECT c1 FROM nct1 

查詢c1列的結果是1~100

 

爲何會出現兩種不一樣的結果?

非彙集索引表有點複雜

掃描索引頁 range scan,這裏range scan跟彙集索引有點不一樣

非彙集索表,掃描有兩種方式:

(1)掃描非彙集索引頁(非彙集索引掃描)
(2)掃描堆裏的數據頁(全表掃描)

實際上,咱們能夠再細分

若是使用非彙集索引掃描的時候,確定用的是range scan的方式,

若是使用全表掃描的時候,確定使用的是allocation scan的方式

咱們使用下面SQL語句看一下nct1表中的非彙集索引頁面

 1 TRUNCATE TABLE [dbo].[DBCCResult]
 2 
 3 INSERT INTO DBCCResult EXEC ('DBCC IND(allocationordertest,nct1,-1) ')
 4 
 5 SELECT * FROM [dbo].[DBCCResult] ORDER BY [PageType] DESC 
 6 
 7 DBCC TRACEON(3604,-1)
 8 GO
 9 DBCC PAGE(allocationordertest,1,115,3) 
10 GO
View Code

 

非彙集索引的range scan,按照c1列的值一直向下掃描

首先掃描第一行c1的值爲1,若是須要讀取其餘字段的值就根據指針到數據頁去讀取其餘字段的值

到數據頁讀取其餘字段的值完畢以後,再掃描第二行,第二行c1的值爲2,若是須要讀取其餘字段的值就根據指針到

數據頁去讀取其餘字段的值,到數據頁讀取其餘字段的值完畢以後,再掃描第三行,一直如此類推

 

 

 

全表掃描的時候沒有掃描非彙集索引頁,只掃描了堆裏的數據頁,這時候跟堆表的狀況是同樣的

爲什麼下面SQL語句會使用全表掃描?不用索引掃描,有時候SQLSERVER認爲全表掃描比索引掃描快就會使用全表掃描

1 SELECT * FROM nct1 

具體能夠看:SQLSERVER彙集索引與非彙集索引的再次研究(下)

 


概括

allocation scan:堆表 、彙集索引表、非彙集索引表

range scan:彙集索引表、非彙集索引表

 


 

下面說一下使用SET STATISTICS IO ON 的時候,邏輯讀次數的一個有趣問題

帖子地址:http://social.msdn.microsoft.com/Forums/zh-CN/cdadc542-2a98-4207-9e22-a7acd2caaec2/iamlogical-reads

LZ說:兩次查詢的邏輯讀的次數都不同,在帖子的回覆裏,博客園裏某位大俠已經給出了答案

他的答案是:兩個查詢都分別使用了range scan和allocation scan

range scan的時候IAM頁面是沒有用的,只靠彙集索引頁面/非彙集索引頁面去掃描記錄,因此SQLSERVER須要去讀取索引頁

allocation scan的時候彙集索引頁面/非彙集索引頁面是沒有用的,只靠IAM頁面去掃描記錄,因此SQLSERVER須要去讀取IAM頁

因此,使用SET STATISTICS IO ON的時候,邏輯讀取次數有時候會有出入

1 USE [GPOSDB]
2 GO
3 SET STATISTICS IO ON
4 SELECT * FROM [dbo].[SystemPara]
5 
6 (17 行受影響)
7'SystemPara'。掃描計數 1,邏輯讀取 2 次,物理讀取 1 次,預讀 0 次,lob 邏輯讀取 0 次,lob 物理讀取 0 次,lob 預讀 0 次。

 

 


總結

你們在作上面實驗的時候,必定要看清楚查詢語句,都沒有加上order by的,沒有加with (nolock)的時候不要加 with (nolock)

看完這篇文章以後,我相信您會更加清楚我在開頭說的三句話

相關文章:

http://blogs.msdn.com/b/sqlserverstorageengine/archive/2006/11/09/when-can-allocation-order-scans-be-used.aspx

 

若有不對的地方,歡迎你們拍磚o(∩_∩)o 

2014-01-07補充:

今天羣裏面的胡平大俠介紹了,根據執行計劃裏索引掃描/彙集索引掃描的是否排序來判斷是allocation scan仍是range scan

相關文章
相關標籤/搜索