I am a developer reading the book "Querying Microsoft SQL Server 2012." I have come across the following diagram:

enter image description here

  1. Why are the pages in the first two rows of the diagram (row 1 starting: 1:174 and row 2 starting: 1:41) not part of an extent? The documentation says: "all pages are stored in extents":

  2. How does the number scheme work e.g. what does 1:174 mean?

  3. Directly above the diagram, the book says: "IAM pages for an object are organized as a doubly linked list;" The diagram does not show any links between the pages.

  • Thanks @ypercube, sorry, edited on mobile, didn't even notice the missing tags. Feb 13, 2016 at 16:20

1 Answer 1

  1. They are part of a mixed extent, the diagram just didn't draw a grey box behind them, probably more to keep it from being too busy as much as anything.

  2. Data File : Page

  3. Again, I think this is just meant to simplify and not make the diagram too busy, as well as not give any sort of suggestion that pages will necessarily be linked in a certain order. Surely you can picture the arrows that would represent a doubly-linked list?

For most of this, you're much better off asking the author of the book and creator of the diagram, than a community of peers.

  • Thanks. What is a data file? As far as I am concerned there is only one data file I.e. The .mdf. Is there one data file per IAM?
    – w0051977
    Feb 13, 2016 at 16:31
  • 1
    @w0051977 msdn.microsoft.com/en-us/library/ms189563.aspx Feb 13, 2016 at 16:41
  • @martin smith, thanks. Are both iams and pages linked using doubley linked lists?
    – w0051977
    Feb 13, 2016 at 17:06
  • 2
    @w0051977, you can have as many data files in a database as you want and as many log files as you want. These two are not correlated, although you need at least one of each. You should probably read up on this (pretty basic) stuff before you start learning about IAMs, extents and pages. Feb 13, 2016 at 17:52
  • 2
    @w0051977, "The pages in each level of the index are linked in a doubly-linked list.". This is the storage structure that allows SQL Server to perform forward and backward scans through an index. Feb 14, 2016 at 20:25

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.