Azure SQL 仮想マシンで OLTP の価格性能比を向上させる

2019年10月22日 に投稿済み

Senior Program Manager, SQL Database

この記事は、Jamie Reding (シニア プログラム マネージャー)、Sadashivan Krishnamurthy (プリンシパル アーキテクト)、Bob Ward (プリンシパル アーキテクト) の共著によるものです。

現在、ほとんどのアプリケーションがオンライン トランザクション処理 (OLTP) によるトランザクションを実行しています。オンライン バンキングや、オンラインでの書籍の購入、航空チケットの予約、テキスト メッセージの送信、テレマーケティングなどは、どれも OLTP ワークロードの例です。OLTP ワークロードには、データベース内のほんの一部のデータに対する挿入、更新、削除といった操作が含まれ、大抵は多数のユーザーによる大量のトランザクションが処理されます。OLTP ワークロードの大半は、読み取り負荷が高く、多様なトランザクションを使い、幅広い種類のデータを利用するものです。

Azure は、多彩な Azure Virtual Machine シリーズAzure ディスク オプションを備えた Azure Virtual Machines (VM) 上の SQL Server により、お客様のワークロードに価格性能比面で多くの利点をもたらします。Intel ベースの Es_v3 シリーズや AMD ベースの Eas_v3 シリーズといったメモリ最適化済み VM シリーズでは、高いメモリ対仮想 CPU (vCPU) 比率を極めて低コストで実現します。制約付き vCPU 対応の VM サイズでは、VM の vCPU の数を制限して SQL Server ライセンスのコストを抑えながら、同じメモリ、記憶域、入出力 (I/O) 帯域幅を維持できます。Premium ソリッド ステート ドライブ (SSD) は、SQL Server のデータ ファイルやログ ファイルに必要な高 IOPS と高スループットを実現する、高パフォーマンス、低待機時間のマネージド ディスクを提供します。Standard SSD は、一貫したパフォーマンスを必要とするワークロード向けに最適化された、コスト効果に優れたストレージ オプションであり、SQL Server のほとんどのバックアップ ファイルには最適な格納先となります。

また、Premium ディスクの高い IOPS 性能に加えて、無料で Azure Virtual Machine の高パフォーマンスの I/O 性能を大幅に向上させる Azure Blobcache が、ミッション クリティカルな OLTP ワークロードに大きな価値をもたらします。Blobcache はVM RAM とローカル SSD を組み合わせることによって実現する多層キャッシュ テクノロジです。読み取り専用の Blobcache を備えた Premium SSD のマネージド ディスクで SQL Server のデータ ファイルをホストすれば、基になるディスクのパフォーマンスを上回る極めて高パフォーマンスの読み取り I/O を利用できます。高スケール VM には、非常に大規模な Blobcache が実装されており、ほとんどのアプリケーションのすべてのデータ ファイルをホストできます。Blobcache からの I/O アクティビティはすべて無料なので、書き込み処理の料金を支払うだけで済み、極めて高い読み取りパフォーマンスでアプリケーションのスループットを向上させながら、価格性能比を最適化できます。現在、OLTP ワークロードの大半の読み取り/書き込み比率が 10 対 1 であることを考えると、価格性能比が最大 90% 向上する計算になります。

ほかにも、I/O 待機時間が非常に短いワークロードには、Azure Ultra ディスクが高スループット、高 IOPS の一貫性のある低待機時間のディスク ストレージを提供します。そして、I/O 待機時間がワークロードのボトルネックとなる場合には、Ultra ディスクがアプリケーションのスループットを最大化します。

読み取り/書き込み比率、トランザクションの複雑さ、スケール パターンに応じて、パフォーマンスの測定に TPC-E (英語)TPC-C (英語) のどちらを使用するか選択できます。一般的に、TPC-E は複雑なトランザクションと高い読み取り/書き込み比率が含まれることから、最近の OLTP ワークロードの大半を占めます。書き込み負荷の高いワークロードで簡単なトランザクションを実行している場合は、パフォーマンスの検証に TPC-C ベンチマークの簡潔性を活かすとよいでしょう。スケールダウンされた TPC-E ワークロードと HammerDB TPC-C キットを使った Azure Virtual Machines 上の SQL Server のパフォーマンスに関する詳細なテストについては、こちらの記事 (英語) を参照してください。

Azure Virtual Machines で SQL Server の使用を開始する

Azure SQL 仮想マシンサービスによって、VM、ストレージ、および SQL Server の構成を完全に制御できるようになり、お客様のワークロード固有の要件に応じて最もコスト効率の高いソリューションを展開する十分な柔軟性が得られます。SQL VM は、現在 SQL VM リソース プロバイダーによって実現されているパフォーマンスが最適化されたストレージ構成を利用して作成できます。また、SQL 仮想マシンのパフォーマンスに関するベスト プラクティスを取り入れることで、ワークロードの価格性能比を向上させることが可能です。

こちら (英語) をクリックすると、Azure Virtual Machines 上で無料の SQL Server Developer Edition のイメージを使ってテストを開始できます。

データ移行ガイド (英語) に沿って、Azure の移行を開始しましょう。