Book Status #1: Indexing for Performance

Posted by & filed under , .

As some of you may know, I am writing a book on indexing.  So far I’ve written and submitted four of the chapters to the publisher.  If anyone ever says, “Writing a book is easy” – kick them.  When they tell you – “it’s really hard” you might want to have them kick you.  Writing a book is one hell of a challenge and I had no idea going in to this what that meant.

Enough about me, let’s talk a bit about the book.  Tomorrow it will be time to start on the next chapter; which happens to be Index Myths and Best Practices.  This chapter is going to take a look at a number of myths that people believe for one reason or another and debunk them.  Then it’ll dig into some best practices that are thrown around and offer a little proof as to why they may be considered best practices.

Do you have something you’d like to see covered in this section?  Leave a comment and we can talk about it – the conversation may just end up in the book in some form.

PS – For those that haven’t heard about the book that is in progress, I’ll be putting together some posts on what’s been written so far to see what people are clambering for. 

  • http://www.scarydba.com Grant Fritchey

    How about one index per column? There was documentation back in the day, that talked about how building compound indexes was unnecessary because SQL Server would just use index intersection to fix everything. That worked out so well that the documentation was pulled. That doesn't stop people from repeating the idiocy endlessly.

  • Jason Strate

    I don't remember that document – but I do the practice. Back when covering indexes were so revolutionary.

  • Chris Fish

    I bet some of those ideas, like Grant's example, came about way back when Microsoft bought FoxPro for their Rushmore query optimization technology. I remember people making all kinds of claims about how to write their queries differently and how to build their indexes to make use of the technology. I think some of this thought was carried over to SQL Server.