SE の雑記

SQL Server の情報をメインに Microsoft 製品の勉強内容を日々投稿

SQL Database のドキュメントで面白い更新がありました

leave a comment

SQL Database のドキュメントは日々更新されていますが、興味深い更新内容がありましたのでご紹介を。


まず、最初に Azure SQL Database サービス レベルとは が更新されています。
このドキュメントには SQL Database のサービス階層 (Basic / Standard / Premium) についての情報が記載されているのですが、最新のドキュメントには、「各サービス階層での概算の IO 性能」が明記されるようになっています。

image

こちらが、投稿を書いている時点で記載されている内容を引用したものになるのですが「IO スループット (概算)」と「IO 待機時間 (概算)」という 2 種類の情報が追加されていますね。
これが追加された記載のようで、2/27 に英語のドキュメントに追加 されていたようです。
今までは、DTU という相対的な性能「指標」をもとに、性能を考える必要があったのですが、ストレージについては、

  • Basic / Standard : DTU あたり 2.5 IOPS
    • Basic: 5 DTU 12.5 IOPS
    • Standard : S1 (20 DTU) 50 IOPS / S3 (100 DTU) 250 IOPS /   S12 (3,000 DTU)  7,500 IOPS
  • Premium : DTU あたり 48 IOPS
    • P1 (125 DTU) 6,000 IOPS / P4 (500 DTU) 24,000 IOPS / P15 (4,000 DTU) 192,000 IOPS

というように、利用可能な IO 性能の予測が立てやすくなっています
Basic / Standard と Premium では、DTU あたりの IOPS 性能が異なっていますが、この差が何に起因しているのかが解説しているドキュメントも公開が行われています。
SQL Database v12 がリリースされた際、「Premium のサービスレベルでは、SSD ベースの IO が用いられている」というのは、情報としていくつか散見されていたのですが、「SQL Database のデータベースがどのようなストレージ構成が使われているのか」について記載されているドキュメントが出ました。
高可用性と Microsoft Azure SQL Database がそのドキュメントになります。
このドキュメントでは、Basic / Standard と Premium のストレージ構成についても触れられており、

  • Basic / Standard : Azure Premium Storage ページ BLOB を使用したリモートストレージ (RS)
  • Premium : ローカルに直結されたローカルストレージを使用したローカルストレージ(LS)

という記載が行われています。
現行の SQL Database、どちらも SSD ベースのディスクが使用されており、リソースガバナンスで IOPS を調整しているのでしょうね。
VM 向けの高パフォーマンスの Premium Storage と管理ディスク で Premium Storage の性能を確認することができますが、P40 / P50 の場合、7,500 IOPS までサポートされていますので、S12 を実行した場合の概算の IOPS の上限と一致しますね。
スループットとしても Premium Storage のスループットと同等になるのでしょうね。
Premium の場合、さらに高速なローカルストレージを使用して DB が構築されているため、基本的な IOPS も異なっているということがこのドキュメントから読み取れるかと。
高可用性のドキュメント、かなり興味深い内容がいろいろと記載されており、以前から SQL Database の情報をキャッチアップされている方は、「以前の SQL Database v12 の冗長構成」から、「今の SQL Database v12 の冗長構成」が変わっていることに驚くのではないでしょうか。
(私は驚きました…。)
「SQL Database はデータベースが三重化されており、耐障害性がデフォルトで確保されている」という、文字上の情報は変わらないのですが、冗長化方式が一変しているように見受けられます。
英語版の High-availability and Azure SQL Database を確認すると、Premium でプレビューで使用可能となっている、「ゾーン冗長構成」についても記載がありますので、こちらも併せて確認するとよいかと。
現状の世代の SQL Database は v12 とまとめて呼ぶことが多いですが、内部的なアーキテクチャや機能は、メジャーな呼び方が変わらなくても、日々進化しており、情報のキャッチアップは怠らないようにしたいものですね。

Share

Written by Masayuki.Ozawa

3月 17th, 2018 at 10:23 am

Posted in SQL Database

Tagged with

Leave a Reply