"यदि कोई कर्मचारी अपना काम अच्छी तरह से करना चाहता है, तो उसे पहले अपने औजारों को तेज करना होगा।" - कन्फ्यूशियस, "द एनालेक्ट्स ऑफ कन्फ्यूशियस। लू लिंगगोंग"
मुखपृष्ठ > प्रोग्रामिंग > MySQL से टुकड़ों में बड़े डेटासेट को कुशलतापूर्वक कैसे पुनर्प्राप्त करें?

MySQL से टुकड़ों में बड़े डेटासेट को कुशलतापूर्वक कैसे पुनर्प्राप्त करें?

2024-11-08 को प्रकाशित
ब्राउज़ करें:499

How to Efficiently Retrieve Large Datasets from MySQL in Chunks?

बेहतर प्रदर्शन के लिए टुकड़ों में MySQL से बड़े डेटा को पुनर्प्राप्त करना

जब लाखों पंक्तियों के साथ बड़े आकार के 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