web-dev-qa-db-ja.com

SQL Server自体からメモリのプレッシャーが発生している場合でも、LPIMの有効化は機能しますか

SQL Server 2016マシン用に128 GBの物理メモリがあるシナリオがあります。 SQL Server専用マシンです。 SQL Server自体に110 GBを割り当てました。

CPU使用率が高い、または接続数が多くなると、パフォーマンスの問題が発生します。より多くの接続で着信するリクエストが増えるため、CPU使用率が高くなるのは正常です。 RING BUFFERS、プランキャッシュなどを確認しました。使用量が増えると、プランキャッシュが頻繁にクリアされることがわかります。また、RING BUFFERはメモリ不足を示していました。ほとんどの場合IndicatorProcess=2は、SQLサーバーが内部的にメモリプレッシャーを検出したことを意味します。まれにIndicatorSystem = 2になります。

私は今しばらくの間これに苦労しています。頻繁に実行されるクエリを調整しましたが、プランキャッシュに利用可能なプランがある場合、それらのほとんどは高速に実行されます。ここで私の質問は:

  1. ほとんどの場合IndicatorProcess=2が表示されるので、LPIMを有効にするとこのシナリオで役立ちますか。
  2. 私はすでに128 GBのRAMを持っていますが、SQL Server 2016 Standardで可能な最大値ですか?

追加情報

enter image description here

監視ツールが過去1時間に言わなければならないことは次のとおりです。

enter image description here

2
user9516827

ほとんどの場合、IndicatorProcess = 2が表示されるので、LPIMを有効にするとこのシナリオで役立ちますか。

番号。

私はすでに128 GBのRAMを持っていますが、SQL Server 2016 Standardで可能な最大値ですか?

はい。

そして

使用量が多く、プランキャッシュに使用可能なプランがある場合、[頻繁なクエリ]のほとんどが高速で実行されると、プランキャッシュが頻繁にクリアされることがわかります

プランのキャッシュに集中する必要があることを示唆しています。使い捨てプランは多数ありますか?その場合は、 アドホックワークロード用に最適化 構成オプションを設定することを検討してください。