Ich entwickle eine Anwendung mit vielen, dinamisch zusammengestellten, komplizierten SQL-Abfragen. Ich möchte die Abfragepläne so lange wie möglich im Prozedurcache belassen. Um zu verhindern, dass die Abfragepläne (aufgrund des Speicherdrucks) aus dem Prozedurcache verworfen werden, möchte ich dem Prozedurcache genügend Speicher zuweisen. Gemäß diesem nur 10% des „sichtbares Ziel“ -Speicher in dem 4 GB-64GB Bereich wird für das Verfahren Cache verwendet; Ich möchte, dass diese Rate höher ist.
Gibt es eine Möglichkeit, die Größe des Prozedur-Cache zu steuern? SQL Server 2008 oder 2012; Vielleicht einige Enterprise Edition-Funktionen?
Gilt auch diese Regel "10% des sichtbaren Zielspeichers", wenn ich explizit die min. Speicher für den SQL Server?
(Mir sind die Hinweise zu KEEP PLAN / KEEPFIXED PLAN bekannt . Ich bin mir auch der Vorteile der Vorbereitung der Anweisungen über Ad-hoc-Abfragen bewusst. Empfehlen Sie diese Möglichkeiten daher nicht. Ich bin besonders neugierig auf die Steuerung des Prozedur-Cache Größe.)