Thanks for a useful article.
A related question (please advise if it would be better as a separate topic) would be if it's possible and, if it is, how to work out how long a reorganise or rebuild will take on a particular system.
I/O time might be possible to work out by using the page count and historical disk performance from performance monitor on a Windows system (I'm not sure of the equivalent on Linux - maybe the top command?)? I am not sure about CPU time though?
I'm just thinking about the user/management question - "OK, so you want downtime, how long for?".
Sorry if this is the wrong place for the question or the information is in your article and I missed it.