An XML index can outweigh the table it serves. Here is how I measure each XML structure next to the base table, and what to test before dropping one.
ALTER TABLE REBUILD: Fixing a Heap Without a Clustered Index
A heap with widening rows collects forwarded records. Here is how to measure them, fix them and know when the fix will not last.
SQL SERVER – Observation of Top with Index and Order of Resultset
Adding an index can change which rows TOP returns when there is no ORDER BY. I share three real cases where the order of resultset was blamed on the wrong thing.
SQL SERVER – ColumnStore Index – Batch Mode vs Row Mode
Someone said columnstore indexes run only in batch mode. I stopped to disagree. Here is what I showed about columnstore batch mode vs row mode.
SQL SERVER – Finding Size of a Columnstore Index Using DMVs
This script uses sys.indexes and sys.dm_db_partition_stats to list the size of a columnstore index on disk, along with its table name.
A Repeatable Workload: Testing a Tuning Change Fairly
One quick run can fool you. Here is a small, fixed test you can rerun before and after any index.
SQL SERVER – Renaming Index – Index Naming Conventions
Tables got renamed to a new standard, but what about the indexes? Tell me which index naming conventions you follow when renaming an index.






