• TheSQLGuru (6/10/2013)


    Tim Walker. (6/10/2013)


    Can anyone share their experiences with accelerator products such as Fusion IO?

    I'm interested to know how easy they are to implement and what benefits / issues people have seen in practice.

    I presume that even for smaller databases that can mainly be cached, there would still be a benefit through increasing the speed the log can be committed to 'disk'.

    Any comments would be greatly appreciated.

    Thanks in anticipation

    Tim

    FusionIO is NOT an "accelerator" product as in "caching", for which there are now numerous products on the market. FusionIO is just a very fast storage device. And yes, if your data can be completely contained in memory faster tlog operations is a win - but so is flushing dirty data pages down to disk, which can be a killer on rotating media for an active OLTP system.

    I have been a proponent of FusionIO since WAY before they were a house-hold name, including spending time with their lead driver developer and doing various SQL Server benchmarks, etc. I have quite a few clients that have migrated to them with very good success. BUT BEWARE: I also have numerous clients that have migrated to either FusionIO or other SSD-based storage and their crappy design/code/indexing/maintenance/etc sometimes leads to (massive amounts of) deadlocks because the system is no longer hobbled by poor IO.

    The first time I heard of that problem, I thought it both ironic and fitting that you actually have to have good code to run on good devices instead of trying to use hardware to "fix" bad code. 😀

    --Jeff Moden


    RBAR is pronounced "ree-bar" and is a "Modenism" for Row-By-Agonizing-Row.
    First step towards the paradigm shift of writing Set Based code:
    ________Stop thinking about what you want to do to a ROW... think, instead, of what you want to do to a COLUMN.

    Change is inevitable... Change for the better is not.


    Helpful Links:
    How to post code problems
    How to Post Performance Problems
    Create a Tally Function (fnTally)