The fundamental storage unit is the page.
The page size is 8KB in SQL Server 2000 (128 pages per MB).
 Each page has a 96 bytes header, containing the following information:
– page type
– page free space
– object ID of the object owning the page (one page can be allocated to one and only one object)
 
 
Possible page types:
– data
– index
– BLOB
– allocation map (Global Allocation Map, Secondary Global Allocation Map)
– page free space
– index allocation map (IAM)
– bulk changed map
– differential changed map
 
Log files do not contain pages; they contain log records.
 
 
Data rows are placed serially on the page starting immediately after the header.
A row offset table starts at the end of the page.
The row offset table contains one entry for each row on the page and each entry records how far the first byte of the row is from the start of the page.
 
The row offsets are in reversed order from the rows order.
 
Rows do not span pages (that means the maximum size for one row is 8kb – 96 bytes – 36 bytes  (probably checksum and offset table)
= 8060 bytes.
 
 
 
Advertisements