Click here to monitor SSC
SQLServerCentral is supported by Redgate
 
Log in  ::  Register  ::  Not logged in
 
 
 
        
Home       Members    Calendar    Who's On


Add to briefcase

Why there is a Limitations on Index size (900 Bytes)? Expand / Collapse
Author
Message
Posted Wednesday, August 1, 2012 3:46 AM
SSC-Addicted

SSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-Addicted

Group: General Forum Members
Last Login: Wednesday, February 10, 2016 1:36 AM
Points: 424, Visits: 1,664
Hi,

Is it correct that all the pages, index/data/iam..etc pages does have the 8KB in size? if yes, why we have this limitation. if not what is the size of the each and every page by tyep. i.e., what is the size of the Index page? What is the max size of the Data Page?

Thank you,


Post #1338394
Posted Wednesday, August 1, 2012 3:49 AM


SSC-Forever

SSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-Forever

Group: General Forum Members
Last Login: Today @ 1:40 PM
Points: 44,016, Visits: 41,422
Yes, all pages are 8kb in size.

Limitation probably to keep the size of the index tree down. Wouldn't make any sense to have 8kb index key, the index tree would be incredibly deep and very inefficient.



Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

We walk in the dark places no others will enter
We stand on the bridge and no one may pass

Post #1338397
Posted Wednesday, August 1, 2012 5:14 AM
SSC-Addicted

SSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-Addicted

Group: General Forum Members
Last Login: Wednesday, February 10, 2016 1:36 AM
Points: 424, Visits: 1,664
GilaMonster (8/1/2012)
Yes, all pages are 8kb in size.

Limitation probably to keep the size of the index tree down. Wouldn't make any sense to have 8kb index key, the index tree would be incredibly deep and very inefficient.


What about the remaining free space? Around 7 Kb of space will be empty or will it contain any information?

Is the statement is correct that you have provided?

Thanks,


Post #1338425
Posted Wednesday, August 1, 2012 5:47 AM


SSChampion

SSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampionSSChampion

Group: General Forum Members
Last Login: Today @ 7:44 AM
Points: 13,975, Visits: 36,295
it's not a one to one relationship. more than one index value will be able to fit in each 8k page;
so an index will be made up of as many pages it needs to hold all it's data.

i think you were thinking each index key goes on it's own page, and that's not how the space would be used.


Lowell

--
help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!
Post #1338440
Posted Wednesday, August 1, 2012 7:31 AM


SSC-Forever

SSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-ForeverSSC-Forever

Group: General Forum Members
Last Login: Today @ 1:40 PM
Points: 44,016, Visits: 41,422
SQL* (8/1/2012)
GilaMonster (8/1/2012)
Yes, all pages are 8kb in size.

Limitation probably to keep the size of the index tree down. Wouldn't make any sense to have 8kb index key, the index tree would be incredibly deep and very inefficient.


What about the remaining free space? Around 7 Kb of space will be empty or will it contain any information?


What happens to a data page when you create a row of only 900 bytes? Same thing with an index page.
SQL doesn't put one row per page, it fills the page with as many rows as possible. In the case of 900 byte rows, fitting 9 rows to the page.

I think you may want to revise basic index architecture.
http://www.sqlservercentral.com/articles/Indexing/68439/
http://www.sqlservercentral.com/articles/Indexing/68563/
http://www.sqlservercentral.com/articles/Indexing/68636/

Is the statement is correct that you have provided?


Err... yes.



Gail Shaw
Microsoft Certified Master: SQL Server, MVP, M.Sc (Comp Sci)
SQL In The Wild: Discussions on DB performance with occasional diversions into recoverability

We walk in the dark places no others will enter
We stand on the bridge and no one may pass

Post #1338517
Posted Thursday, August 2, 2012 6:35 AM
SSC-Addicted

SSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-AddictedSSC-Addicted

Group: General Forum Members
Last Login: Wednesday, February 10, 2016 1:36 AM
Points: 424, Visits: 1,664
Thank you all (GilaMonster), for your answers.

Post #1339096
« Prev Topic | Next Topic »

Add to briefcase

Permissions Expand / Collapse