Azure SQL DB के लिए संसाधन खपत पर सबसे बड़ा प्रभाव एप्लिकेशन लेयर द्वारा बार-बार डेटा पुल हैं। कोई फर्क नहीं पड़ता कि वे क्वेरी कितनी तेजी से निष्पादित होती हैं, वही प्रक्रिया को कॉल करना या वही SQL स्टेटमेंट सैकड़ों, हजारों, या लाखों बार एक दिन में डेटाबेस प्रदर्शन पर कहर बरपा सकते हैं। हजारों कटों से मौत आसानी से एक सिस्टम को घुटनों पर ला सकती है। कभी-कभी DBAs के लिए इनका सक्रिय रूप से निवारण करना कठिन होता है क्योंकि स्टेटमेंट का निष्पादन इतनी तेजी से होता है कि वे sp_whoisactive जैसे टूल में दिखाई भी नहीं देते। यह तब तक नहीं है जब तक आप Query Performance Insights या Query Store जैसी चीजों में गोता लगाना शुरू नहीं करते कि आप वास्तविक मुद्दे को देखना शुरू करते हैं।
Azure Portal


SSMS Query Store शीर्ष उपभोग करने वाले क्वेरीज निष्पादन गणना मीट्रिक के साथ


सवाल यह है कि आप इस मुद्दे का मुकाबला कैसे करते हैं? कोड को फाइन-ट्यून किया गया है और इष्टतम प्रदर्शन पर चलता है, यह सिर्फ एप्लिकेशन कॉल की मात्रा है जो समस्या पैदा कर रही है। एक उत्तर Azure Cache for Redis है।
Azure Cache for Redis क्या है?
सीधे शब्दों में कहें, यह एक समर्पित मेमोरी कैश डेटा स्टोर है जिसे Azure के भीतर या बाहर के एप्लिकेशन द्वारा ओपन सोर्स Redis के आधार पर एक्सेस किया जा सकता है। यह आपको डेटा को इन-मेमोरी डेटा स्टोर में लोड करने, सीधे उससे पढ़ने और आपके डेटाबेस पर कॉल की संख्या कम करने में सक्षम बनाता है। इस कैश लेयर में डेटा रखने से एप्लिकेशन को बार-बार दोहराए जाने वाले डेटा कॉल करने से रोका जा सकता है। यह नाटकीय रूप से डेटाबेस प्रदर्शन में सुधार कर सकता है, विलंबता कम कर सकता है, और कैश पर प्रदर्शन लोड को स्थानांतरित करके और डेटाबेस लेयर से दूर करके अन्य डेटा अनुरोधों के लिए संसाधनों को मुक्त कर सकता है। इसके लिए आपके एप्लिकेशन कोड में परिवर्तन की आवश्यकता होगी; हालांकि, यह संभावित रूप से डेटाबेस प्रदर्शन को वास्तव में बढ़ा सकता है। आप यहां Microsoft डॉक्स में एक काफी जटिल ऐप का उदाहरण देख सकते हैं।
यह न केवल प्रदर्शन लाभ बल्कि मौद्रिक लाभ भी हो सकता है। परिणाम वास्तव में आपको अपने Azure SQL डेटाबेस को स्केल डाउन करने की अनुमति दे सकता है क्योंकि आपकी संसाधन खपत कम हो जाएगी।
शुरुआत करना
एक संसाधन बनाएं, डेटाबेस के तहत Azure Cache for Redis चुनें

कैश प्रकार विकल्पों पर ध्यान दें। मूल्य निर्धारण स्तरों के लिंक पर क्लिक करना सुनिश्चित करें ताकि आप अपने वातावरण के लिए सही चुन सकें। इस मामले में मैं सबसे सस्ता चुन रहा हूं, Basic C0, जो मुझे केवल 250 MB कैश देता है लेकिन अनुमानित $16 प्रति माह, बड़े वाले थोड़े महंगे हो सकते हैं।

नेटवर्किंग के लिए आपको पब्लिक या प्राइवेट एंडपॉइंट चुनना होगा फिर अगला चुनें

अब चुनें कि आप कौन सा Redis संस्करण चाहते हैं। ध्यान दें कि पूर्वावलोकन में संस्करण 6 है। अगला आपको टैग विकल्पों पर ले जाएगा, जिसे मैं छोड़ देता हूं, क्योंकि मुझे अपने संसाधनों को टैग करने की कोई आवश्यकता नहीं है। अंत में, हम संसाधन की समीक्षा और निर्माण करते हैं। अब हमारे पास एक Redis Cache संसाधन बन गया है, इसका उपयोग करने, इसमें डेटा स्टोर करने और अपने एप्लिकेशन के माध्यम से इसे एक्सेस करने में सक्षम होने के लिए बहुत अधिक कदम उठाने हैं। मैं उन चरणों को आप पर छोड़ दूंगा, इस पोस्ट में मैं सिर्फ आपको दिखाना चाहता था कि इसे पोर्टल में कहां ढूंढना है और इसे कैसे बनाना है।
सारांश
यदि आप ऐसे वातावरण में काम करते हैं जिसमें प्रति घंटे हजारों बार दोहराए जाने वाले डेटा कॉल होते हैं, तो यह आपके लिए देखने के लिए एक वास्तव में महान संसाधन हो सकता है। मैं अत्यधिक सुझाव देता हूं कि आप Azure Cache for Redis को अपने प्रदर्शन ट्यूनिंग टूलकिट में जोड़ें। आप यहां प्रक्रिया के साथ जारी रखने के लिए आवश्यक सभी जानकारी पा सकते हैं। सभी सुरक्षा चीजों पर विचार करने के बारे में भी पढ़ना सुनिश्चित करें। Microsoft डॉक्स के भीतर बहुत सारा उपयोगी दस्तावेज़ीकरण यहां भी पाया जा सकता है।