Posts

Showing posts with the label Engine

SQL Server Extents, PFS, GAM, SGAM and IAM and related corruptions

Image
  I’m going to start a series of posts talking about SQL Server allocation pages and corruption. Each post will have samples showing how SQL Server use these pages and scenarios of corruption. The first post will talk about the Extents, PFS, GAM, SGAM and IAM and related corruptions, you can find all concepts from following two pages: Pages and Extents Architecture Guide Under the covers: GAM, SGAM, and PFS pages   As there are many concepts and samples, I’m going to discuss the topics in two or three posts.   1.Extents Extents are the basic unit in which space is managed. An extent is eight physically contiguous pages, or 64 KB. This means SQL Server databases have 16 extents per megabyte. SQL Server has two types of extents: ·          Uniform  extents are owned by a single object; all eight pages in the extent can only be used by the owning object. ·          Mixed  extents are shared by up to eight objects. Each of the eight pages in the extent can be owned by