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

現象

Microsoft SQL Server 2012 または SQL Server 2014 データベースには、多くの統計情報とテーブルがあり、テーブルには多くの列が含まれていることを前提としています。 多くのアドホッククエリを実行してそれらのテーブルからデータを同時に取得すると、実行中に CMEMTHREAD 待機が発生する可能性があります。

解決方法

累積的な更新情報

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

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

詳細情報

SQL Server 2012 でクエリをコンパイルまたは再コンパイルするときに、エンジンは統計ヒストグラムから入力を取得する必要があります。 システムテーブルスキャンを実行してから、メモリまたはキャッシュに含まれるテーブルの特定のヒストグラムを読み込む必要があります。 これらのシステムテーブルエントリ (統計情報) は、システムテーブルキャッシュ (CACHESTORE_SYSTEMROWSET) に格納されます。 キャッシュ内のこれらのエントリを作成するために使用されるメモリオブジェクトは区分されておらず、グローバルです。 そのため、この操作で同時にメモリ割り当てを実行する場合は、このメモリオブジェクトで CMEMTHREAD の待機が発生します。 これは通常、コンパイルまたは再コンパイルが必要な多数のクエリを送信するときに発生します。 この修正プログラムでは、システムテーブルキャッシュを使用する同時メモリ割り当てによって競合が発生せず、 CMEMTHREAD が待機するように、グローバルメモリオブジェクトが分割されるように変更しています。同様の問題の詳細については、「 KB 3026082: FIX: システムテーブルの行セットキャッシュでのスピン SOS_CACHESTORE の競合により、SQL Server 2012 または2014で CPU 使用率が高くなる」を参照してください。

状態

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

ヘルプを表示

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

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

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

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

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

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

×