¡iÁÉ}ºô¡ÐIT§Þ³N³ø¹D¡j¦b¼Æ¾Ú®wªº³]p¹Lµ{¤¤¡A§Ú̸g±`·|µo²{¤@¨Ç«D±`¼eªºªí¡AÁöµM¥¦Ìªº¥X²{¨Ï§Ú̽s½X¤u§@¤è«K¤F³\¦h¡A¦ý«Ü¦h¤H³£·|¾á¤ß³o¼Ëªº²§±`·|¤£·|¹ï¼Æ¾ÚŪ¨ú©M¼Æ¾Ú®wªº¾ãÅé©Ê¯à¦³©Ò¼vÅT¡C¥»¤å¤¤¡A§ÚÌ¥Dn¤¶²Ð¤F´XÓpºâªí¼e«×ªº¹ê¨Ò¸}¥»¡A§Æ±æ¹ï¤j®aªº¾Ç²ß©M¤u§@¦³©ÒÀ°§U¡C
¤èªk1¡G DBCC SHOWCONTIG
DBCC SHOWCONTIG©R¥O¥i¥H³ø§i»P¦æ¬ÛÃöªº¸ê°T¡A¥i¥H¦Ò¼{¨Ï¥Î¥¦¨Ópºâªí¼e¡C³o¬O³q¹L¨Ï¥ÎWITH TABLERESULTS¿ï¶µ¨Ó§¹¦¨¡CµM«á®Ú¾Ú§Aªº»Ýn¥i¥HÀˬd¥H¤U´X¶µ¡G MinimumRecordSize¡B MaximumRecordSize©M AverageRecordSize¡C
²³æªº DBCC SHOWCONTIG ©R¥O
¥H¤U¬O¤Þ¥Î¤ù¬q¡G
USE AdventureWorks;
GO
DBCC SHOWCONTIG WITH TABLERESULTS;
GO
»Ýnª`·Nªº¬O¡GDBCC SHOWCONTIGªº³oÓ¥\¯à¥u¦bSQL server 2000©MSQL server 2005¨½¦³¡C¤£«ØÄ³Ác¦£ªºSQL Server¼Æ¾Ú®w¦b¤u§@®É¶¡¹B¦æ³oÓ©R¥O¡A¥i¥H¦b«D¤u§@®É¶¡©ÎµÛºûÅ@µ¡¤f©Î¼Æ¾Ú®w³Æ¥÷ùعB¦æ¸Ó©R¥O¡C
¤èªk2¡G- sys.dm_db_index_physical_stats
sql server 2005ªº¤@Ó·s¯S©Ê´N¬O§ó¥[¥Í°ÊªººÞ²zµø¹Ï©M¨ç¼Æ¡C¦b³oºØ±¡ªp¤U§ÚÌ¥i¥H¤è«K¨Ï¥Îªº´N¬Osys.dm_db_index_physical_stats¡CºÞ²zµø¹Ï©M¨ç¼Æ³Ì¤jªºÀuÂI¦b©ó¥i¥H³q¹L«D±`²³æªºSELECT»y¥y¶i¦æ¬d¸ß¡C¤U±¬O´XӨϥÎAdventureWorks sql server 2005¼Æ¾Ú®wªº¨Ò¤l¡G
¤Þ¥Î¤ù¬q¡G
sys.dm_db_index_physical_stats ¡V °ò¥»ªº SELECT »y¥y
USE AdventureWorks;
GO
SELECT CAST(DB_NAME(DATABASE_ID) AS VARCHAR(20)) AS 'DatabaseName',
CAST(OBJECT_NAME([OBJECT_ID]) AS VARCHAR(20)) AS 'TableName',
index_id,
index_type_desc,
alloc_unit_type_desc,
min_record_size_in_bytes,
max_record_size_in_bytes,
avg_record_size_in_bytes
FROM SYS.DM_DB_INDEX_PHYSICAL_STATS
(DB_ID('AdventureWorks'),NULL,NULL,NULL,'DETAILED');
GO
sys.dm_db_index_physical_stats ¡V ±a¦³ORDER BY±q¥yªº°ò¥»SELECT»y¥y
USE AdventureWorks;
GO
SELECT CAST(DB_NAME(DATABASE_ID) AS VARCHAR(20)) AS 'DatabaseName',
CAST(OBJECT_NAME([OBJECT_ID]) AS VARCHAR(20)) AS 'TableName',
index_id,
index_type_desc,
alloc_unit_type_desc,
min_record_size_in_bytes,
max_record_size_in_bytes,
avg_record_size_in_bytes
FROM SYS.DM_DB_INDEX_PHYSICAL_STATS
(DB_ID('AdventureWorks'),NULL,NULL,NULL,'DETAILED')
ORDER BY avg_record_size_in_bytes DESC;
GO
Database Design Considerations
¼Æ¾Ú®w³]p»Ýn¦Ò¼{ªº°ÝÃD¡G
¨s³º¤°»ò®ÉÔÀ³¸Ó¦Ò¼{µû´ú§Aªº¼Æ¾Ú®w³]p¤è®×(¼eªºªí)¡C¨ãÅ骺´XӤ豦p¤U¡G
¦n©Î¤£¦n¡G¦Ò¼{¨ìªíªº¨Ï¥Î¡A¼eªºªí¤£¤@©w¬O¤£¦nªº³]p¤è®×¡C¹ï©ó»Ýn¥Í¦¨³øªíªº¤u§@Àô¹Ò¡A¤@¨Ç¼Æ¾Ú®w·|³]p¦a¤ñ¸û¼e¡A¨Óº¡¨¬³øªí»Ýn¡A³o¼Ë¥i¥H¥Í¦¨Â²³æªº¤¶±¡C
®ø°£¦hªí³s±µ¡G¦bOLTPÀô¹ÒùØ¡A¦³¨Ç±¡ªp¤U·|³q¹L«´_¼Æ¾Ú¨Ó®ø°£¦hªí³s±µ¡C®Ú¾Ú¤£¦Pªº±¡ªp¥H¤Î«´_¼Æ¾ÚªººûÅ@¡A³o¥i¯à¬O«OÃÒ¨}¦nªº¥Î¤áÅéÅ窺¤@Ó«n§Þ³N¡C
«´_¦C¡G³oºØ±¡ªp¬O«Ü¨å«¬ªº¼Ð»x¡A»¡©ún»ò¬O¼Æ¾Ú®w³]p¤£°÷ÄYÂÔ¡An»ò´N¬O¼Æ¾Ú®w¤w¸g¶}µo¤F«Üªø®É¶¡¤F¡C¦pªG¤@Óªí¦³¤T¦C¥H¤W·N«ä¤@¼Ëªº¦C¡A¤ñ¦p²£«~¤@¡A²£«~¤G¡A²£«~¤T¡A¨º»ò¥i¥H»¡¬O¤@ӫܨ嫬ªº¤@¹ï¦hÃö«Y¡C¥t¥~»Ýn¦Ò¼{ªº¤@ÂI¬O¡A°²¦pq³æùØÁÙ¦³²Ä¥|Ó²£«~©Î²Ä¤Ó²£«~¡AÀ³¸Ó«ç»ò¿ì©O?
°²¦p¤@Ӽƾڮw¥]§t¤@¨Ç«Ü¼eªºªí¡A©Ò¦³ªº¦C³£¬O¤å¥»¼Æ¾ÚÃþ«¬¡A¦ý¬O¨ä¤¤¤@¨Ç§ó¾A¦X¨Ï¥Îinteger²Å¸¹¾ã«¬¼Æ¾Ú©Î¤é´Á®É¶¡Ãþ«¬µ¥µ¥¡A¨º»ò³o¼Ëªº¼Æ¾Ú®wªÖ©w¬O¨S¦³¸g¹L¿¦±Kªº¦Ò¼{¡A¦b¦¹±¡ªp¤U¡A³oÓ³]p¹Î¶¤À³·í¶i¤@¨Bªº¥[±j¼Æ¾Ú®w¤è±ªº¾Ç²ß¡C¡]³d¥ô½s¿è¡G¿c¥üªL¡^