हमारे पास एक beefy Windows 2008 x64 सर्वर (4 x 4 कोर सीपीयू, 32 जीबी रैम) SQL Server 2005 64-बिट चल रहा है। हमारे पास एक छोटा (6GB) लेकिन बहुत महत्वपूर्ण डेटाबेस है जो कुछ हद तक उपयोग में धीमा है जब तक कि पृष्ठों को मेमोरी में कैश नहीं किया जाता है (उपयोग बहुत यादृच्छिक है I / O इसलिए ऑड्स बहुत कम हैं एक दिया गया पृष्ठ स्मृति में है और अंतिम उपयोगकर्ता हैं प्रारंभिक सुस्ती के बारे में शिकायत)। डिस्क काफी तेजी से (स्थानीय 15K SAS) हैं, लेकिन मुझे लगता है कि ऐप कुछ हद तक अनाड़ी रूप से लिखा हुआ है (यह एक COTS समाधान है) इसलिए मैं सोच रहा हूं कि क्या SQL Server 2005 में मेमोरी में डेटाबेस को "बाध्य" करने का कोई तरीका है (2008 समर्थित नहीं है) शुरुआती कैश-फिलिंग ब्लूज़ से बचने में मदद करने के लिए वेंडर द्वारा, इसलिए हमें अभी तक उस पर अपग्रेड नहीं करना चाहिए)?
मेरी वर्तमान विधि यह है कि मैं मेमोरी में डेटा पृष्ठ प्राप्त करने के लिए स्क्रिप्ट में प्रत्येक तालिका से एक SELECT * चलाता हूं, लेकिन कुछ ऑब्जेक्ट्स (अनुक्रमित, पूर्ण पाठ खोज, आदि) इस विधि द्वारा कैश नहीं किए जाते हैं (और स्क्रिप्ट को संशोधित करने के लिए अनुक्रमित करने के लिए अनुक्रमित करें) कैश के लिए उपयुक्त क्लॉसेस को उबालना महासागर में जटिल है)।