国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > 綜合 > 正文

索引深入淺出(2/10):堆表

2024-07-21 02:47:10
字體:
供稿:網(wǎng)友
索引深入淺出(2/10):堆表

在上一個文章里,我們理解了有聚集索引表和沒有聚集索引表之間的區(qū)別。有聚集索引的表叫聚集表。沒有聚集索引的表叫堆表(heap table)。

堆表(heap table)
  • 沒有聚集索引的表
  • 堆表在sys.partitions里有1條index_id = 0 的記錄
  • 數(shù)據(jù)存儲沒有任何的順序,插入數(shù)據(jù)也沒順序
  • 由于數(shù)據(jù)沒有任何順序,查詢數(shù)據(jù)會非常慢
  • 數(shù)據(jù)頁之間沒有相互鏈接
  • 從數(shù)據(jù)頁讀取數(shù)據(jù),需要從IAM(Index Allocation Map)頁里找頁號
  • sys.system_internals_allocation_units系統(tǒng)視圖里,first_iam_page列,指向IAM頁鏈中的第一個IAM頁,它用來管理堆表的空間分配
  • 因為沒有聚集索引,碎片不能通過重建索引(rebuilding the index)處理
  • SQL Server使用IAM頁在堆結(jié)構(gòu)里導(dǎo)航。分配給堆的頁沒有任何的順序,且不相互鏈接。數(shù)據(jù)頁之間唯一的邏輯關(guān)聯(lián)是存在IAM頁里的信息。

每個IAM頁存儲單個對象的分配(單個頁或區(qū)分配)信息。堆表的表掃描是通過掃描IAM頁,找到保存堆表數(shù)據(jù)的對應(yīng)頁或區(qū)來完成。

使用下列命令可以獲得IAM頁。

1 DBCC IND('databasename','Tablename',-1)

上述查詢的輸出結(jié)果里,Page Type列值為10的記錄就是IAM頁。

堆的結(jié)構(gòu)如下圖所示:


發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 藁城市| 竹山县| 白水县| 沂源县| 无棣县| 青田县| 广东省| 新野县| 古交市| 兴文县| 凤冈县| 赤城县| 盐边县| 灵台县| 洪洞县| 句容市| 富裕县| 九台市| 肇东市| 武隆县| 郯城县| 淮北市| 安庆市| 通许县| 宿州市| 刚察县| 清新县| 保亭| 沁阳市| 阿勒泰市| 喜德县| 云浮市| 陆良县| 临沂市| 桓台县| 双城市| 象州县| 诸暨市| 蒲江县| 沾益县| 前郭尔|