SQL Server VM のストレージの構成Storage configuration for SQL Server VMs

Azure で SQL Server 仮想マシン イメージを構成するとき、ポータルを使用して、ストレージ構成を自動化すると便利です。When you configure a SQL Server virtual machine image in Azure, the Portal helps to automate your storage configuration. これには、ストレージを VM に接続する、そのストレージが SQL Server にアクセスできるようにする、特定のパフォーマンス要件を最適化するためにストレージを構成する、などの作業が含まれます。This includes attaching storage to the VM, making that storage accessible to SQL Server, and configuring it to optimize for your specific performance requirements.

このトピックでは、プロビジョニング中に SQL Server VM のストレージが Azure によってどのように構成されるか、また、既存の VM のストレージがどのように構成されるかを説明します。This topic explains how Azure configures storage for your SQL Server VMs both during provisioning and for existing VMs. この構成は、SQL Server が実行されている Azure VM の パフォーマンスに関するベスト プラクティス に基づいています。This configuration is based on the performance best practices for Azure VMs running SQL Server.


Azure には、リソースの作成と操作に使用できるデプロイメント モデルが 2 種類あります。Azure Resource Manager とクラシックですAzure has two different deployment models you can use to create and work with resources: Azure Resource Manager and classic. この記事では、Resource Manager デプロイ モデルの使用について説明します。This article covers the use of the Resource Manager deployment model. 新しいデプロイには、クラシック デプロイ モデルではなく、Resource Manager デプロイ モデルをお勧めします。We recommend the Resource Manager deployment model for new deployments instead of the classic deployment model.


自動化されたストレージ構成設定を使用するには、仮想マシンには次の特性が必要です。To use the automated storage configuration settings, your virtual machine requires the following characteristics:

新しい VMNew VMs

次のセクションでは、新しい SQL Server 仮想マシンのストレージを構成する方法について説明します。The following sections describe how to configure storage for new SQL Server virtual machines.

Azure ポータルAzure portal

SQL Server のギャラリー イメージを使用して Azure VM をプロビジョニングするときは、 [SQL Server の設定] タブの [構成の変更] を選択して、パフォーマンス最適化ストレージの構成ページを開きます。When provisioning an Azure VM using a SQL Server gallery image, select Change configuration on the SQL Server Settings tab to open the Performance Optimized Storage Configuration page. 既定値のままにすることも、ワークロードに基づいてご自分のニーズに最適なディスク構成の種類に変更することもできます。You can either leave the values at default, or modify the type of disk configuration that best suits your needs based on your workload.

プロビジョニング中の SQL Server VM ストレージの構成

[ストレージの最適化] では、SQL Server をデプロイする対象のワークロードの種類を選択します。Select the type of workload you're deploying your SQL Server for under Storage optimization. [全般] 最適化オプションの既定では、最大 5,000 IOPS のデータ ディスクが 1 つ使用され、この同じドライブをデータ、トランザクション ログ、TempDB ストレージに使用します。With the General optimization option, by default you will have one data disk with 5000 max IOPS, and you will use this same drive for your data, transaction log, and TempDB storage. [トランザクション処理] (OLTP) または [データ ウェアハウス] を選択すると、データ用とトランザクション ログ用にそれぞれ個別のディスクが作成され、TempDB 用にはローカル SSD が使用されます。Selecting either Transactional processing (OLTP) or Data warehousing will create a separate disk for data, a separate disk for the transaction log, and use local SSD for TempDB. [トランザクション処理][データ ウェアハウス] でストレージに違いはありませんが、ストライプの構成とトレース フラグが変更されます。There are no storage differences between Transactional processing and Data warehousing, but it does change your stripe configuration, and trace flags. Premium Storage を選択すると、SQL Server VM のパフォーマンスのベスト プラクティスに関する記事に従って、キャッシュがデータ ドライブについては "読み取り専用" に、ログ ドライブについては "なし" に設定されます。Choosing premium storage sets the caching to Readonly for the data drive, and None for the log drive as per SQL Server VM performance best practices.

プロビジョニング中の SQL Server VM ストレージの構成

ディスク構成は完全にカスタマイズ可能であるため、SQL Server VM のワークロードに必要なストレージ トポロジ、ディスクの種類、IOPS を構成できます。The disk configuration is completely customizable so that you can configure the storage topology, disk type and IOPs you need for your SQL Server VM workload. また、SQL Server VM がサポートされているリージョン (米国東部 2、東南アジア、北ヨーロッパ) にあり、サブスクリプションで Ultra Disks を有効にしている場合は、 [ディスクの種類] のオプションとして UltraSSD (プレビュー) を使用することもできます。You also have the ability to use UltraSSD (preview) as an option for the Disk type if your SQL Server VM is in one of the supported regions (East US 2, SouthEast Asia and North Europe) and you've enabled ultra disks for your subscription.

さらに、ディスクのキャッシュを設定することもできます。Additionally, you have the ability to set the caching for the disks. Premium ディスクで使用する場合、Azure VM には BLOB キャッシュと呼ばれる多層キャッシュ テクノロジがあります。Azure VMs have a multi-tier caching technology called Blob Cache when used with Premium Disks. BLOB キャッシュでは、仮想マシンの RAM とローカル SSD の組み合わせがキャッシュに使用されます。Blob Cache uses a combination of the Virtual Machine RAM and local SSD for caching.

Premium SSD のディスク キャッシュは、"読み取り専用"、"読み取り書き込み"、または "なし" にすることができます。Disk caching for Premium SSD can be ReadOnly, ReadWrite or None.

  • "読み取り専用" キャッシュは、Premium Storage に格納されている SQL Server データ ファイルの場合に非常にメリットがあります。ReadOnly caching is highly beneficial for SQL Server data files that are stored on Premium Storage. "読み取り専用" キャッシュを使用すると、読み取りは VM メモリおよびローカル SSD 内にあるキャッシュから実行されるので、読み取り待機時間は短く、読み取り IOPS は高く、スループットは高くなります。ReadOnly caching brings low read latency, high read IOPS, and throughput as, reads are performed from cache, which os within the VM memory and local SSD. これらの読み取りは、Azure Blob Storage に存在するデータ ディスクからの読み取りよりはるかに高速です。These reads are much faster than reads from data disk, which is from the Azure blob storage. Premium Storage では、ディスクの IOPS とスループットのために、キャッシュからの読み取りはカウントされません。Premium storage does not count the reads served from cache towards the disk IOPS and throughput. そのため、アプリケーションの総 IOPS と総スループットを向上させることができます。Therefore, your applicable is able to achieve higher total IOPS ant throughput.

  • ログ ファイルはシーケンシャルに書き込まれ、"読み取り専用" キャッシュによるメリットがないため、SQL Server ログ ファイルがホストされるディスクには "なし" キャッシュ構成を使用する必要があります。None cache configuration should be used for the disks hosting SQL Server Log file as the log file is written sequentially and does not benefit from ReadOnly caching.

  • SQL Server では "読み取り書き込み" キャッシュでのデータ整合性がサポートされていないため、"読み取り書き込み" キャッシュを使用して SQL Server ファイルをホストしないでください。ReadWrite caching should not be used to host SQL Server files as SQL Server does not support data consistency with the ReadWrite cache. 書き込みが "読み取り専用" BLOB キャッシュ層を通過すると、書き込みによって "読み取り専用" BLOB キャッシュの容量が無駄になり、待機時間が若干増加します。Writes waste capacity of the ReadOnly blob cache and latencies slightly increase if writes go through ReadOnly blob cache layers.


    ストレージ構成が、選択した VM サイズによって課される制限と一致していることを確認してください。Be sure that your storage configuration matches the limitations imposed by the the selected VM size. VM サイズのパフォーマンス上限を超えるストレージ パラメーターを選択すると、次のエラーが発生します: The desired performance might not be reached due to the maximum virtual machine disk performance cap.Choosing storage parameters that exceed the performance cap of the VM size will result in error: The desired performance might not be reached due to the maximum virtual machine disk performance cap.. ディスクの種類を変更して IOPS を減らすか、VM サイズを増やしてパフォーマンスの上限を上げてください。Either decrease the IOPs by changing the disk type, or increase the performance cap limitation by increasing the VM size.

VM が作成されたら、ここで選択した内容に基づいて、次のストレージ構成タスクが実行されます。Based on your choices, Azure performs the following storage configuration tasks after creating the VM:

  • Premium SSD を作成し、仮想マシンに接続する。Creates and attaches premium SSDs to the virtual machine.
  • SQL Server にアクセスできるようにデータ ディスクを構成する。Configures the data disks to be accessible to SQL Server.
  • 指定したサイズとパフォーマンス (IOPS とスループット) 要件に基づいて、データ ディスクを記憶域プールにまとめる。Configures the data disks into a storage pool based on the specified size and performance (IOPS and throughput) requirements.
  • 仮想マシンで記憶域プールを新しいドライブに関連付ける。Associates the storage pool with a new drive on the virtual machine.
  • 指定したワークロードの種類 (データ ウェアハウス、トランザクション処理、または一般) に基づいて、新しいドライブを最適化する。Optimizes this new drive based on your specified workload type (Data warehousing, Transactional processing, or General).

Azure によるストレージ設定の構成方法の詳細については、「 ストレージの構成」を参照してください。For further details on how Azure configures storage settings, see the Storage configuration section. Azure portal で SQL Server VM を作成する詳しい手順については、プロビジョニング チュートリアルをご覧ください。For a full walkthrough of how to create a SQL Server VM in the Azure portal, see the provisioning tutorial.

Resource Manager テンプレートResource Manage templates

次の Resource Manager テンプレートを使用する場合、既定では、2 つ Premium データ ディスクが記憶域プール構成なしで接続されます。If you use the following Resource Manager templates, two premium data disks are attached by default, with no storage pool configuration. ただし、仮想マシンに接続される Premium データ ディスクの数は、次のテンプレートをカスタマイズすることで変更できます。However, you can customize these templates to change the number of premium data disks that are attached to the virtual machine.

クイック スタート テンプレートQuickstart template

次のクイック スタート テンプレートを使用すると、ストレージ最適化を使用して SQL Server VM をデプロイできます。You can use the following quickstart template to deploy a SQL Server VM using storage optimization.

既存の VMExisting VMs


次のスクリーンショットは、Azure Portal 内の SQL 仮想マシンのリソースからのものです。The following screenshots are from the SQL virtual machines resource within the Azure portal. サポート終了 (EOS) の SQL Server VM、および SQL VM リソース プロバイダーに登録されていない SQL Server VM の場合は、代わりに [SQL Server の構成] タブを使用して SQL Server VM を管理してください。For end-of-support (EOS) SQL server VMs, and SQL Server VMs that have not been registered with the SQL VM resource provider, use the SQL Server configuration tab to manage your SQL Server VM instead.

既存の SQL Server VM については、Azure ポータルで一部のストレージ設定を変更できます。For existing SQL Server VMs, you can modify some storage settings in the Azure portal. SQL 仮想マシン リソースを開き、 [概要] を選択します。Open your SQL virtual machines resource, and select Overview. SQL Server の概要ページに、VM の現在のストレージ使用量が表示されます。The SQL Server Overview page shows the current storage usage of your VM. このグラフには、VM 上のすべてのドライブが示されており、All drives that exist on your VM are displayed in this chart. ドライブごとに、次の 4 つのセクションの記憶域スペースが表示されます。For each drive, the storage space displays in four sections:

  • SQL データSQL data
  • SQL ログSQL log
  • その他 (非 SQL ストレージ)Other (non-SQL storage)
  • 使用可能Available

ストレージ設定を変更するには、 [設定] の下で [構成] を選択します。To modify the storage settings, select Configure under Settings.

既存の SQL Server VM 用のストレージを構成する

SQL Server VM の作成プロセス中に構成されたドライブのディスク設定を変更できます。You can modify the disk settings for the drives that were configured during the SQL Server VM creation process. [ドライブの拡張] を選択するとドライブ変更ページが開き、ディスクの種類を変更したり、ディスクを追加したりすることができます。Selecting Extend drive opens the drive modification page, allowing you to change the disk type, as well as add additional disks.

既存の SQL Server VM 用のストレージを構成する

ストレージの構成Storage configuration

このセクションでは、Azure portal での SQL VM のプロビジョニングまたは構成時に自動的に行われる、ストレージ構成の変更に関するリファレンス情報を提供します。This section provides a reference for the storage configuration changes that Azure automatically performs during SQL VM provisioning or configuration in the Azure portal.

  • Azure では、VM から選択されたストレージから記憶域プールが構成されます。Azure configures a storage pool from storage selected from your VM. このトピックの次のセクションでは、記憶域プールの構成について詳しく説明します。The next section of this topic provides details about storage pool configuration.
  • 自動ストレージ構成では、必ず Premium SSD P30 データ ディスクが使用されます。Automatic storage configuration always uses premium SSDs P30 data disks. 結果として、選択したテラバイト数と、VM に接続されているデータ ディスク数は 1 対 1 で対応しています。Consequently, there is a 1:1 mapping between your selected number of Terabytes and the number of data disks attached to your VM.

料金情報については、 Storage 料金 ページの「 Disk Storage 」タブを参照してください。For pricing information, see the Storage pricing page on the Disk Storage tab.

記憶域プールの作成Creation of the storage pool

Azure では、次の設定を使用して、SQL Server VM で記憶域プールを作成します。Azure uses the following settings to create the storage pool on SQL Server VMs.

SettingSetting Value
ストライプ サイズStripe size 256 KB (データ ウェアハウス)、64 KB (トランザクション)256 KB (Data warehousing); 64 KB (Transactional)
ディスク サイズDisk sizes 各 1 TB1 TB each
キャッシュCache 読み取りRead
アロケーション サイズAllocation size 64 KB NTFS アロケーション ユニット サイズ64 KB NTFS allocation unit size
復旧Recovery シンプルな復元 (回復性なし)Simple recovery (no resiliency)
列数の合計Number of columns データ ディスクの数 (最大 8)1Number of data disks up to 81

1 記憶域プールの作成後、その記憶域プールの列数を変更することはできません。1 After the storage pool is created, you cannot alter the number of columns in the storage pool.

ワークロード最適化の設定Workload optimization settings

次の表では、使用可能な 3 つのワークロードの種類のオプションと、対応する最適化について説明します。The following table describes the three workload type options available and their corresponding optimizations:

ワークロードの種類Workload type 説明Description 最適化Optimizations
全般General ほとんどのワークロードをサポートする既定の設定Default setting that supports most workloads なしNone
トランザクション処理Transactional processing 従来のデータベース OLTP ワークロード用にストレージを最適化しますOptimizes the storage for traditional database OLTP workloads トレース フラグ 1117Trace Flag 1117
トレース フラグ 1118Trace Flag 1118
データ ウェアハウスData warehousing 分析とレポートのワークロード用にストレージを最適化しますOptimizes the storage for analytic and reporting workloads トレース フラグ 610Trace Flag 610
トレース フラグ 1117Trace Flag 1117


ワークロードの種類を指定するには、SQL 仮想マシンをプロビジョニングしているときに、ストレージの構成手順でそのワークロードの種類を選択します。You can only specify the workload type when you provision a SQL virtual machine by selecting it in the storage configuration step.

次の手順Next steps

Azure VM での SQL Server の実行に関するその他のトピックについては、「 Azure Virtual Machines における SQL Server」を参照してください。For other topics related to running SQL Server in Azure VMs, see SQL Server on Azure Virtual Machines.