जब लाखों पंक्तियों के साथ बड़े आकार के MySQL चयन से निपटते हैं, तो डेटा पुनर्प्राप्ति के दौरान मेमोरी बाधाओं के साथ समस्याएं उत्पन्न हो सकती हैं। यह आलेख प्रबंधनीय टुकड़ों में डेटा पुनर्प्राप्त करने के लिए LIMIT सुविधा का उपयोग करके इस चुनौती का समाधान तलाशता है।
बड़े डेटासेट को पुनरावृत्त रूप से पुनर्प्राप्त करने के लिए, LIMIT सुविधा को नियोजित किया जा सकता है। एक प्रारंभिक पंक्ति और पुनः प्राप्त करने के लिए पंक्तियों की अधिकतम संख्या निर्दिष्ट करके, हम चयन प्रक्रिया को छोटे उपसमूहों में विभाजित कर सकते हैं। उदाहरण के लिए, निम्नलिखित क्वेरी को निष्पादित करना:
SELECT * FROM MyTable ORDER BY whatever LIMIT 0,1000
पहली 1,000 पंक्तियाँ लाएगा। 1,000 पंक्तियों के बाद के सेट को पुनः प्राप्त करने के लिए, हम समायोजित LIMIT मानों के साथ समान क्वेरी जारी कर सकते हैं, जैसे:
SELECT * FROM MyTable ORDER BY whatever LIMIT 1000,1000 -- rows 1,001 - 2,000 SELECT * FROM MyTable ORDER BY whatever LIMIT 2000,1000 -- rows 2,001 - 3,000
हालाँकि, यह दृष्टिकोण पुनर्प्राप्ति प्रक्रिया के दौरान तालिका में संभावित परिवर्तनों के कारण पंक्तियों के सुसंगत क्रम की गारंटी नहीं देता है। इसे संबोधित करने के लिए, हम पहले एक अस्थायी तालिका बना सकते हैं और उसे ऑर्डर किए गए परिणामों से भर सकते हैं:
CREATE TEMPORARY TABLE MyChunkedResult AS ( SELECT * FROM MyTable ORDER BY whatever );
यह सुनिश्चित करता है कि पंक्तियों का क्रम बरकरार रहे जबकि हम उन्हें टुकड़ों में पुनः प्राप्त करते हैं:
SELECT * FROM MyChunkedResult LIMIT 0, 1000; SELECT * FROM MyChunkedResult LIMIT 1000,1000; SELECT * FROM MyChunkedResult LIMIT 2000,1000; .. and so on.
प्रत्येक टुकड़े के लिए उपयुक्त प्रारंभिक पंक्ति निर्धारित करने और परिणामों के अंत की जांच करने के लिए, कस्टम तर्क लागू किया जा सकता है। प्रदर्शन को अनुकूलित करने के लिए 1,000 रिकॉर्ड की तुलना में काफी बड़े खंड आकार का उपयोग करने की अनुशंसा की जाती है।
डेटा पुनर्प्राप्ति को पूरा करने पर, संसाधन प्रबंधन के लिए अस्थायी तालिका को छोड़ने की सलाह दी जाती है:
DROP TEMPORARY TABLE MyChunkedResult;
इस खंडित पुनर्प्राप्ति दृष्टिकोण को अपनाने से प्रदर्शन में काफी सुधार होता है और बड़े MySQL डेटासेट के सफल निष्कर्षण की अनुमति मिलती है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3