Easy ways to create indexes using multiple times the actual table space:
1. Create multiple indexes on MANY columns in the table (I have actually seen indexes defined that were the entire set of columns of the table - and there were a lot of columns).
2. "Include" inappropriate columns from the table (either with "Include ()" or just as part of a covering index). ("Inappropriate" = columns that will rarely if ever help queries to find the desired data.)
3. Create duplicate indexes. (I once found a table with THREE identical indexes on it. BTW - an index on "Tbl(a,b)" is essentially the same as "Tbl(a) include (b)", so if you see two indexes like that, one of them can be dropped.)
4. Use GUIDs for your primary index columns and watch your index pages split.
5. Don't ever rebuild your indexes.
They may have truncated the table, but you can still look at the index definitions and see how many of the above occurred... 😉