4 responses

  1. Jeff Moden
    2011-08-24

    Now THAT’s the kind of testing I like to see done! Well done, Wayne!

    I agree… I’m both excited at the prospect of a proper supported method and disappointed.

    Although a couple of the “Unbounded Preceeding” methods look hopeful (still nearly 5 times slower than the Quirky Update) and certainly outstripe what a Cursor would do, I hope MS figures out that there’s, relatively, a performance problem. With the number of reads they use, they must be using the equivalent of a recursive CTE in the background. Needless to say, I’m concerned about the number of reads because it’s either going to be pressure on the disk system (physical reads) or, more likely, memory pressure (logical reads).

    –Jeff Moden

    Reply

  2. Jason Brimhall (@sqlrnnr)
    2011-08-25

    Good stuff Wayne.

    Reply

  3. Gianluca Sartori
    2011-08-30

    Nice post, Wayne!
    I guess I will have to stick to the quirky update until the OVER method performs significantly better. I guess that MS developers could easily identify those situations where a straight index scan could implement the running total and get closer to the blindingly fast quirky update.

    Time will tell.

    Reply

  4. Jeff Moden
    2011-08-30

    You know I’ll be sticking with the QU until OVER() can be made faster but, for a lot of folks, using something “documented” will win then over (sorry for the pun) especially since the worst performaning example is still better than a cursor. They won’t even bother to look at insane number of logical reads. I haven’t fired up Denali, yet, but I’m thinking the reads are cause by use of a “Worktable”.

    Reply

Leave a Reply to let me know how you liked this post

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Back to top
mobile desktop