頁和區 sql server

來源:互聯網
上載者:User

標籤:http   io   ar   os   使用   sp   strong   on   檔案   

原文地址:http://msdn.microsoft.com/zh-cn/library/ms190969.aspx

 

SQL Server 中資料存放區的基本單位是頁。為資料庫中的資料檔案(.mdf 或 .ndf)分配的磁碟空間可以從邏輯上劃分成頁(從 0 到 n 連續編號)。磁碟 I/O 操作在頁級執行。也就是說,SQL Server 讀取或寫入所有資料頁。

區是八個物理上連續的頁的集合,用來有效地管理頁。所有頁都儲存在區中。

頁 

在 SQL Server 中,頁的大小為 8 KB。這意味著 SQL Server 資料庫中每 MB 有 128 頁。每頁的開頭是 96 位元組的標題,用於儲存有關頁的系統資訊。此資訊包括頁碼、頁類型、頁的可用空間以及擁有該頁的對象的配置單位 ID。

下表說明了 SQL Server 資料庫的資料檔案中所使用的頁類型。

 

頁類型

內容

Data

當 text in row 設定為 ON 時,包含除 text、 ntext、image、nvarchar(max)、varchar(max)、varbinary(max) 和 xml 資料之外的所有資料的資料行。

Index

索引條目。

Text/Image

大型物件資料類型:

  • text、 ntext、image、nvarchar(max)、varchar(max)、varbinary(max) 和 xml 資料。

資料行超過 8 KB 時為可變長度資料類型列:

  • varchar、nvarchar、varbinary 和 sql_variant

Global Allocation Map、Shared Global Allocation Map

有關區是否分配的資訊。

Page Free Space

有關頁分配和頁的可用空間的資訊。

Index Allocation Map

有關每個配置單位中表或索引所使用的區的資訊。

Bulk Changed Map

有關每個配置單位中自最後一條 BACKUP LOG 語句之後的大容量操作所修改的區的資訊。

Differential Changed Map

有關每個配置單位中自最後一條 BACKUP DATABASE 語句之後更改的區的資訊。

注意

記錄檔不包含頁,而是包含一系列日誌記錄。

在資料頁上,資料行緊接著標題按順序放置。頁的末尾是行位移表,對於頁中的每一行,每個行位移表都包含一個條目。每個條目記錄對應行的第一個位元組與頁首的距離。行位移表中的條目的順序與頁中行的順序相反。

大型行支援

行不能跨頁,但是行的部分可以移出行所在的頁,因此行實際可能非常大。頁的單個行中的最大資料量和開銷是 8,060 位元組 (8 KB)。但是,這不包括用 Text/Image 頁類型儲存的資料。包含 varchar、nvarchar、varbinary 或 sql_variant 列的表不受此限制的約束。當表中的所有固定列和可變列的行的總大小超過限制的 8,060 位元組時,SQL Server 將從最大長度的列開始動態將一個或多個可變長度列移動到 ROW_OVERFLOW_DATA 配置單位中的頁。每當插入或更新操作將行的總大小增大到超過限制的 8,060 位元組時,將會執行此操作。將列移動到 ROW_OVERFLOW_DATA 配置單位中的頁後,將在 IN_ROW_DATA 配置單位中的原始頁上維護 24 位元組的指標。如果後續操作減小了行的大小,SQL Server 會動態將列移回到未經處理資料頁。有關詳細資料,請參閱資料列溢位資料超過 8 KB。

區 

區是管理空間的基本單位。一個區是八個物理上連續的頁(即 64 KB)。這意味著 SQL Server 資料庫中每 MB 有 16 個區。

為了使空間分配更有效,SQL Server 不會將所有區分配給包含少量資料的表。SQL Server 有兩種類型的區:

  • 統一區,由單個對象所有。區中的所有 8 頁只能由所屬對象使用。

  • 混合區,最多可由八個對象共用。區中八頁的每頁可由不同的對象所有。

通常從混合區向新表或索引分配頁。當表或索引增長到 8 頁時,將變成使用統一區進行後續分配。如果對現有表建立索引,並且該表包含的行足以在索引中產生 8 頁,則對該索引的所有分配都使用統一區進行。

頁和區 sql server

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.