[INF] SQL Server の Affinity Mask Connection を構成する方法

文書翻訳 文書翻訳
文書番号: 299641 - 対象製品
この記事は、以前は次の ID で公開されていました: JP299641
すべて展開する | すべて折りたたむ

概要

この資料は、SQL Server 2000 SP1 以降で利用できる affinity mask connection オプションの使用方法について説明しています。

オンライン トランザクション処理 (OLTP) 環境で、affinity mask connection オプションを使用すると、16 個以上の CPU を使用しているコンピュータで実行しているハイエンドな、エンタープライズ レベルの SQL Server 環境でパフォーマンスが向上することがあります。特に、中間層アプリケーション サーバーとバックエンド SQL Server システム間で多数のネットワーク上の対話 (毎秒 10,000 以上) がある場合にこのオプションが役に立ちます。

詳細

SQL Server 2000 Service Pack 1 では、サーバー ネットワーク ユーティリティに affinity mask connection オプションを導入して VIA (Virtual Interface Architecture) プロトコルの機能を拡張しています。VIA の詳細については、SQL Server Books Online を参照してください。

サーバー ネットワーク ユーティリティを使用して SQL Server が受信待ちするプロトコルおよびポートを定義できます。VIA トランスポートでは、定義されるポートごとにネットワーク読み込みスレッドが作成されます。マスクを指定することにより、定義した CPU のセットでこのスレッドを実行するように制限できます。ネットワーク スレッドは affinity mask connection で定義された CPU と同じセットの CPU で実行されているスケジューラのみに作業項目を分散します。

affinity mask connection を指定する場合、この指定をプロセッサの affinity mask システム構成オプションと関連付ける必要があります。affinity mask connection は affinity mask 構成オプションのサブセットになります。affinity mask オプションの詳細については、SQL Server Books Online を参照してください。

affinity mask connection を設定するには、以下の手順に従います。
  1. サーバー ネットワーク ユーティリティを起動します。
  2. [有効] をクリックして、[有効なプロトコル] に VIA を追加します。
  3. [VIA] をクリックして、[プロパティ] をクリックします。
  4. [ネットワーク プロトコル既定値の設定] の [ベンダ] を指定します (たとえば、Giganet や Servernet です)。
  5. 次の構文を使用して、[受信待ち情報] ボックスに構成する必要があるネットワーク インターフェイス カード (NIC) ごとに SQL Server が受信待ちするポートを定義します。
    <nic-number>:<VIA-port-number>[CPU mask],...


    0:1000[0x000f],0:1001[0x00f0],1:1000[0x0f00],1:1001[0xf000]
    
    たとえば、上記の行は 4 つのネットワーク スレッドを提供します。各スレッドは 4 つの CPU に制限され、各スレッドは作業項目をこれら 4 つの CPU に分散します。
以下の点にも注意してください。
  • VIA ポート番号は TCP ポート番号とは異なります。この番号はクライアントとサーバーの間で一致している必要があります。
  • affinity mask connection は 0x または 0X で始まる 16 進数で表現します。
  • マスクはビットマップです。たとえば、右端のビットは一番小さい順序の CPU (0) を指定し、その右隣のビットは 2 番目に小さい順序の CPU (1) を指定します。
  • マルチプロセッサ コンピュータで 1 バイトの affinity mask connection は最大 8 個の CPU、2 バイトのマスクは最大 16 個の CPU、3 バイトのマスクは最大 24 個の CPU、4 バイトのマスクは最大 32 個の CPU に対応します。
  • 特定の CPU で connection affinity を有効にするには、affinity mask connection でこの CPU に対応するビットを 1 に設定する必要があります。
  • すべてのビットが 0 に設定されているか、または affinity mask connection が指定されていない場合、SQL Server ネットワーク I/O は SQL Server スレッドの処理に適切な CPU にスケジュール設定されます。
  • SQL Server が実行されている間は、affinity mask connection の値を変更できません。affinity mask connection に新しく設定した値を有効にするには、SQL Server のインスタンスをシャットダウンして、再起動する必要があります。
affinity mask connection は以下の場合に使用できます。ただし、最終的な構成はサーバーの仕様や後で行うテストに依存します。
  • SQL Server でクライアントから SQL Server ネットワーク I/O は VIA トランスポート経由で多数のネットワーク要求を処理する必要がある場合。
  • 負荷分散およびデータの局所性を指定する場合。

    VIA ポートへの接続からの作業項目は affinity mask connection で定義されたとおりに制限された数の CPU によって処理されます。これによってユーザーは負荷を分散できます。

    たとえば、OLTP 読み込みが個別の nic:port [cpu mask 0xf000] を経由してルーティングできる場合、16 個の CPU システムですべてのバッチ ジョブは nic:port [cpu mask 0xf000] を経由してルーティングできます。この事例では、SQL Server は最初の 4 つの CPU を使用してバッチ読み込みを処理し、アラームを使用して OLTP 読み込みを処理します。この例では、affinity mask 構成オプション (sp_configure) が 0xffff に設定されている必要があることに注意してください。

関連情報

この資料は米国 Microsoft Corporation から提供されている Knowledge Base の Article ID 299641 (最終更新日 2001-06-30) をもとに作成したものです。

プロパティ

文書番号: 299641 - 最終更新日: 2007年10月26日 - リビジョン: 1.1
この資料は以下の製品について記述したものです。
  • Microsoft SQL Server 2000 Service Pack 1
キーワード:?
kbinfo kbsqlserv2000sp1fix kbproductlink KB299641
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"

フィードバック

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com