メイン コンテンツへスキップ
サポート
Microsoft アカウントでサインイン
サインインまたはアカウントを作成してください。
こんにちは、
別のアカウントを選択してください。
複数のアカウントがあります
サインインに使用するアカウントを選択してください。

現象

SQL Server 2014 Service Pack 1 (SP1)、SQL Server 2012 SP3、または SQL Server 2016 をインストールした後、サーバーが再起動されるまで、クエリパフォーマンスが遅くなり、高い特権 (カーネル) モード CPU 使用率が発生します。 また、大量の PAGELATCH_ * の待機時間も表示されることがあります。

解決方法

この問題は、SQL Server の次の累積的な更新プログラムで修正されました。

SQL Server 用の新しい累積更新プログラムには、以前の累積的な更新プログラムに含まれていたすべての修正プログラムとすべてのセキュリティ修正が含まれています。 SQL Server の最新の累積的な更新プログラムをダウンロードしてインストールすることをお勧めします。

原因

SQL Server では、動的なラッチプロモーションと降格ロジック (super/sub ラッチ) が使用されます。 これにより、ラッチ上の取得回数と、ラッチの競合が存在しない場合に同じラッチを取得するのにどれだけの時間がかかるかを追跡して、SQL Server のパフォーマンスとスケーラビリティが向上します。 次に、このモデルに基づいて適格なラッチが昇格されます (スーパーラッチ)。 ヒープまたは B-tree (HoBT) で多くの変更 (挿入/更新/削除) が発生した場合、HoBT に関連付けられたラッチは、スーパーラッチの状態に昇格されることがあります。 ただし、降格は自動的には実行されません。 スーパー・ラッチの詳細については、 この記事を参照してください。これらの HoBTs を後で解放すると、解放された HoBT は再利用のためにグローバルキャッシュに戻ります。 HOBT が再利用されると、HoBT に競合がない場合でも、以前に昇格したラッチが再利用されます。 これにより CPU のオーバーヘッドが増加します。 この動作により、サーバーが再起動されるまで、SQL Server の特権 (カーネル) モードの CPU 使用量が増加します。 通常、この増加によって、実行されるたびに数ミリ秒が追加されることはありません。 また、HoBTs の拡張されたスーパーラッチのために、大量の PAGELATCH_ * の待機時間も表示されることがあります。 

状態

マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。

ヘルプを表示

その他のオプションが必要ですか?

サブスクリプションの特典の参照、トレーニング コースの閲覧、デバイスのセキュリティ保護方法などについて説明します。

コミュニティは、質問をしたり質問の答えを得たり、フィードバックを提供したり、豊富な知識を持つ専門家の意見を聞いたりするのに役立ちます。

この情報は役に立ちましたか?

言語の品質にどの程度満足していますか?
どのような要因がお客様の操作性に影響しましたか?
[送信] を押すと、Microsoft の製品とサービスの改善にフィードバックが使用されます。 IT 管理者はこのデータを収集できます。 プライバシーに関する声明。

フィードバックをいただき、ありがとうございます。

×