How does premium DTU performance compare to standard DTU performance, and how does eDTU performance compare with non-elastic? RRS feed

  • Question

  • This great article provides a performance comparison between the different Azure SQL Database performance tiers. Notably in his tests the read performance of 1 DTU in Premium Tier is about 10x the read performance of 1 DTU in Standard Tier, while the write performance, CPU, and memory appear to be about the same between Standard and Premium per DTU (*). 

    (* = except for the anomaly that S3 was worse than S2, which he assumed was a bug that'd be soon fixed.)


    1. Is that disparity between standard and premium DTUs published/intended by Microsoft?
    2. Is there any disparity between the performance of elastic DTUs vs non-elastic DTUs (if you assume there's only one database active in an elastic pool)? e.g. will a 100-DTU standard pool with 1 db perform exactly the same as a S3 database?

    The reason behind my questions is we're migrating around 30 databases from Web/Business to new service tiers and trying to get similar performance as with Web/Business. Currently we have a Standard elastic pool but the max DTU per database of 100 means we're not getting sufficient throughput and encounter a lot of timeouts.

    I can increase the pool to 200 DTUs but our load is intermittent and generally there's only one database active at a time so that's not going to help much. If I swap to a Premium pool I can get 125 DTUs = 1.25x performance for ~3x the price, (factoring in the 50% preview discount) or 250 DTUs = 2.5x performance at ~6x price of standard. I know premium offers other high availability benefits for that additional cost but for my purposes I'm only interested in increased performance.

    If 1 premium DTU is known to be better than 1 standard DTU then maybe the performance of a premium 125 DTU pool will be more than 1.25x a standard 100 DTU pool, so maybe I can justify the increased price. But if that disparity between standard and premium DTU is an anomaly that might be corrected later then I'm hesitant to rely on that. 



    Wednesday, August 19, 2015 3:45 PM


  • Rory, I'd be happy to help.

    The disparity between IOPS performance in V12 Premium DTUs and Basic/Standard is by design.  I can't find the documentation that talks about V12 Premium and the significant increase in IOPS, for now you'll just have to trust me on this.  Depending on your workload, you may see upto 10x the IOPS in V12 Premium.

    There is no disparity between a V12 DTU and an eDTU (which by design is V12 only).

    You should know that Web/Business, based on what other (not your, but other customers DBs) DBs are going on that same backend node, can give you zero or up to a V2 P2 (200 DTUs).  A standard elastic database pool could work, although through your own testing you're seeing time-outs.  That could be because the pool isn't large enough, or could be because several of those Web/Business databases were peaking to 200 DTUs.  For this later case you'll need a Premium elastic database pool which we added to the public preview earlier this week.

    There is significant live telemetry in portal.azure.com that will help you understand your overall pool utilisation and your DBs utlisation.

    Thanks Guy

    Wednesday, August 19, 2015 10:27 PM