メモリ最適化テーブルの作成
重要
Azure Data Studio は、2026 年 2 月 28 日 に廃止される予定です。 弊社は、Visual Studio Codeを使用することをお勧めします。 Visual Studio Code への移行の詳細については、「Azure Data Studio の概要」を参照してください。
適用対象:SQL Server
Azure SQL データベース
Azure SQL Managed Instance
メモリ最適化テーブルは、テーブル全体がメモリ内に存在する SQL Server の機能です。 テーブル データの 2 番目のコピーはディスクに保持されています。 メモリ最適化テーブル内のデータは、サーバーの再起動後など、データベースの復旧中にのみディスクから読み取られます。 メモリ最適化テーブルはファイル グループに属している必要があり、Azure Data Studio のテーブル デザイナーで作成できます。 詳細については、メモリ最適化ファイル グループの に関するこのドキュメントを参照してください。
メモリ最適化テーブルには、非クラスター化主キーが必要です。 メモリ最適化テーブルの概要については、「メモリ最適化テーブルの概要」の記事を参照してください。 さらに、すべてのメモリ最適化テーブルに少なくとも 1 つのインデックスが必要です。
メモリ最適化テーブルを作成する
メモリ最適化テーブルを作成するには、データベース用にファイル グループが作成されていることを確認する必要があります。 メモリ最適化テーブルが存在するまったく新しいデータベースを作成するため、オブジェクト エクスプローラーでサーバー レベルから新しいクエリ エディター ウィンドウを開きます。 クエリ エディターで、次のコードをコピー、貼り付け、実行します。
CREATE DATABASE imoltp GO -------------------------------------- -- create database with a memory-optimized -- filegroup and a container. ALTER DATABASE imoltp ADD FILEGROUP imoltp_mod CONTAINS MEMORY_OPTIMIZED_DATA; ALTER DATABASE imoltp ADD FILE ( name='imoltp_mod1', filename='c:\data\imoltp_mod1') TO FILEGROUP imoltp_mod; ALTER DATABASE imoltp SET MEMORY_OPTIMIZED_ELEVATE_TO_SNAPSHOT = ON; GO --
上記のコードでは、新しいデータベースを作成し、データベースにファイル グループを追加し、ファイル グループにファイルを追加し、最後に、このデータベースにスナップショットに追加されたメモリ最適化テーブルの分離レベルを設定します。
次に、オブジェクト エクスプローラーから imoltp データベースを開き、[テーブル] フォルダーを右クリックし、[新しいテーブル] を選択してテーブルを作成します。 テーブル デザイナー ビューが開きます。 このテーブルの主キーを割り当てます (主キーの 設定の [クラスター化 ] チェック ボックスをオフにして、この主キーが非クラスター化されていることを確認します)。
[テーブルのプロパティ] ウィンドウで、[メモリ最適化 ] チェック ボックスをオンにします。 これにより、持続性ドロップダウンが有効になり、スキーマのみ、またはスキーマとデータの両方をメモリに格納するかどうかを選択できます。 [スキーマ] を選択すると、データベースのスキーマのみがメモリに保存されます。 次に示すように、スクリプトが更新されて変更が反映されます。
[スキーマ] を選択すると、スキーマのみがメモリに保存されます。 スキーマとデータ を選択すると、スキーマとデータがメモリに保存されます。 スクリプトの変更に注意してください。
注意
テーブル デザイナーでは、ハッシュ インデックスと列ストア インデックスもサポートされています。これは、メモリ最適化テーブルの作成時に構成できます。