index create memory サーバー構成オプションの構成Configure the index create memory Server Configuration Option

適用対象: ○SQL Server XAzure SQL Database XAzure SQL Data Warehouse XParallel Data WarehouseAPPLIES TO: yesSQL Server noAzure SQL Database noAzure SQL Data Warehouse noParallel Data Warehouse

このトピックでは、 または SQL Server 2017SQL Server 2017 を使用して、 SQL Server Management StudioSQL Server Management Studio index create memory Transact-SQLTransact-SQLサーバー構成オプションを構成する方法について説明します。This topic describes how to configure the index create memory server configuration option in SQL Server 2017SQL Server 2017 by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL. index create memory オプションは、インデックス作成時の並べ替え操作用として最初に割り当てられる最大メモリ容量を制御します。The index create memory option controls the maximum amount of memory initially allocated for sort operations when creating indexes. このオプションの既定値は 0 (自己構成) です。The default value for this option is 0 (self-configuring). その後、インデックスを作成するためにより多くのメモリが必要になった場合、メモリ容量を確保できるのであれば、サーバーはそのメモリを使用します。したがって、使用メモリ容量がこのオプションの設定値を超えることになります。If more memory is later needed for index creation and the memory is available, the server will use it; thereby, exceeding the setting of this option. 追加メモリを確保できない場合は、既に割り当てられているメモリを使用してインデックス作成が続行されます。If additional memory is not available, the index creation will continue using the memory already allocated.

このトピックの内容In This Topic

はじめにBefore You Begin

制限事項と制約事項Limitations and Restrictions

  • min memory per query オプションの設定は、index create memory オプションよりも優先順位が高くなります。The setting of the min memory per query option has precedence over the index create memory option. 両方のオプションを変更し、 index create memory の設定値を min memory per queryより小さくした場合は、警告メッセージが表示されます。ただし、値はそのまま設定されます。If you change both options and the index create memory is less than min memory per query, you receive a warning message, but the value is set. クエリ実行中にも同様の警告が表示されます。During query execution, you receive a similar warning.

  • パーティション テーブルとパーティション インデックスを使用する場合、パーティション インデックスが未整理であったり、並列処理の頻度が高かったりすると、インデックスの作成に必要な最小メモリ容量が大幅に増加します。When using partitioned tables and indexes, the minimum memory requirements for index creation may increase significantly if there are non-aligned partitioned indexes and a high degree of parallelism. このオプションを使用して、1 回のインデックス作成操作ですべてのインデックス パーティションに最初に割り当てられる合計メモリ容量を指定できるようになっています。This option controls the total initial amount of memory allocated for all index partitions in a single index creation operation. このオプションで指定したメモリ容量が、クエリの実行に必要となる最小メモリ容量より小さい場合は、クエリの実行が中止され、エラー メッセージが表示されます。The query will terminate with an error message if the amount set by this option is less than the minimum required to run the query.

  • このオプションの実行値は、 SQL ServerSQL Server を実行しているオペレーティング システムおよびハードウェア プラットフォームで実際に確保できるメモリ容量を超えることはありません。The run value for this option will not exceed the actual amount of memory that can be used for the operating system and hardware platform on which SQL ServerSQL Server is running.

推奨事項Recommendations

  • このオプションは詳細設定オプションであるため、熟練したデータベース管理者または認定された SQL ServerSQL Server プロフェッショナルだけが変更するようにしてください。This option is an advanced option and should be changed only by an experienced database administrator or certified SQL ServerSQL Server professional.

  • index create memory オプションは自動的に設定されるので、通常は調整する必要がありません。The index create memory option is self-configuring and usually works without requiring adjustment. ただし、インデックスを正常に作成できない場合は、必要に応じて、このオプションの値を実行値より大きくしてください。However, if you experience difficulties creating indexes, consider increasing the value of this option from its run value.

  • 通常、稼働中のシステムではインデックス作成は頻度の少ない作業であり、多くの場合、閑散時に実行が予定されるジョブです。Creating an index on a production system is usually an infrequently performed task, often scheduled as a job to execute during off-peak time. したがって、インデックスの作成が頻繁でなく、閑散時に行われる場合、index create memory を増やすとインデックス作成のパフォーマンスが向上できます。Therefore, when creating indexes infrequently and during off-peak time, increasing the index create memory can improve the performance of index creation. ただし、 min memory per query 構成オプションの値は小さい数にします。そうすれば、要求したすべてのメモリが利用できない場合でも、インデックス作成ジョブは起動します。Keep the min memory per query configuration option at a lower number, however, so the index creation job still starts even if all the requested memory is not available.

セキュリティSecurity

PermissionsPermissions

パラメーターなしで、または最初のパラメーターだけを指定して sp_configure を実行する権限は、既定ですべてのユーザーに付与されます。Execute permissions on sp_configure with no parameters or with only the first parameter are granted to all users by default. 両方のパラメーターを指定して sp_configure を実行し構成オプションを変更したり RECONFIGURE ステートメントを実行したりするには、ALTER SETTINGS サーバーレベル権限がユーザーに付与されている必要があります。To execute sp_configure with both parameters to change a configuration option or to run the RECONFIGURE statement, a user must be granted the ALTER SETTINGS server-level permission. ALTER SETTINGS 権限は、 sysadmin 固定サーバー ロールと serveradmin 固定サーバー ロールでは暗黙のうちに付与されています。The ALTER SETTINGS permission is implicitly held by the sysadmin and serveradmin fixed server roles.

SQL Server Management Studio の使用Using SQL Server Management Studio

index create memory オプションを構成するにはTo configure the index create memory option

  1. オブジェクト エクスプローラーで、サーバーを右クリックし、 [プロパティ] をクリックします。In Object Explorer, right-click a server and select Properties.

  2. [メモリ] ノードをクリックします。Click the Memory node.

  3. [インデックス作成メモリ] で、index create memory オプションの目的の値を入力または選択します。Under Index creation memory, type or select the desired value for the index create memory option.

    index create memory オプションは、インデックス作成時の並べ替えに使用するメモリの量を制御する場合に使用します。Use the index create memory option to control the amount of memory used by index creation sorts. index create memory オプションは自動構成型で、ほとんどの場合、調整を行わなくても機能します。The index create memory option is self-configuring and should work in most cases without requiring adjustment. ただし、インデックスを正常に作成できない場合は、必要に応じて、このオプションの値を実行値より大きくしてください。However, if you experience difficulties creating indexes, consider increasing the value of this option from its run value. クエリの並べ替えは、 min memory per query オプションを使用して制御します。Query sorts are controlled through the min memory per query option.

Transact-SQL の使用Using Transact-SQL

index create memory オプションを構成するにはTo configure the index create memory option

  1. データベース エンジンDatabase Engineに接続します。Connect to the データベース エンジンDatabase Engine.

  2. [標準] ツール バーの [新しいクエリ] をクリックします。From the Standard bar, click New Query.

  3. 次の例をコピーしてクエリ ウィンドウに貼り付け、 [実行] をクリックします。Copy and paste the following example into the query window and click Execute. この例では、 sp_configure を使用して、 index create memory オプションの値を 4096に設定する方法を示します。This example shows how to use sp_configure to set the value of the index create memory option to 4096.

USE AdventureWorks2012 ;  
EXEC sp_configure 'show advanced options', 1;  
GO  
RECONFIGURE;  
GO  
EXEC sp_configure 'index create memory', 4096  
GO  
RECONFIGURE;  
GO  

詳細については、「 サーバー構成オプション (SQL Server)」を参照してください。For more information, see Server Configuration Options (SQL Server).

補足情報: index create memory オプションを構成した後Follow Up: After you configure the index create memory option

新しい設定は、サーバーを再起動しなくてもすぐに有効になります。The setting takes effect immediately without restarting the server.

参照See Also

sys.configurations (Transact-SQL) sys.configurations (Transact-SQL)
RECONFIGURE (Transact-SQL) RECONFIGURE (Transact-SQL)
サーバー メモリに関するサーバー構成オプション Server Memory Server Configuration Options
サーバー構成オプション (SQL Server) Server Configuration Options (SQL Server)
sp_configure (Transact-SQL)sp_configure (Transact-SQL)