Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> MySQL

MySQL में कंपोजिट इंडेक्स का उपयोग करके धीमी क्वेरी को तेज़ करना


आइए पहले देखें कि कंपोजिट इंडेक्स क्या है:

  • एक कंपोजिट इंडेक्स एक इंडेक्स है जिसका उपयोग कई कॉलम पर किया जाता है।

  • इसे मल्टीपल-कॉलम इंडेक्स के रूप में भी जाना जाता है।

  • MySQL उपयोगकर्ता को एक कंपोजिट इंडेक्स बनाने की अनुमति देता है जिसमें 16 कॉलम तक हो सकते हैं।

  • क्वेरी ऑप्टिमाइज़र उन क्वेरीज के लिए कंपोजिट इंडेक्स का उपयोग करता है जो इंडेक्स में सभी कॉलम का परीक्षण करेंगी।

  • इसका उपयोग उन क्वेरीज के लिए भी किया जा सकता है जो पहले कॉलम, पहले दो कॉलम, और इसी तरह का परीक्षण करेंगी।

  • यदि इंडेक्स परिभाषा में कॉलम सही क्रम में निर्दिष्ट हैं, तो एक ही कंपोजिट इंडेक्स का उपयोग उसी टेबल पर कुछ प्रकार की क्वेरीज को तेज करने के लिए किया जा सकता है।

आइए देखें कि टेबल निर्माण के दौरान कंपोजिट इंडेक्स कैसे बनाया जा सकता है। यह नीचे दिए गए स्टेटमेंट का उपयोग करके किया जा सकता है:

क्वेरी

CREATE TABLE table_name (
    c1 data_type PRIMARY KEY,
    c2 data_type,
    c3 data_type,
    c4 data_type,
    INDEX index_name (c2,c3,c4)
);

उपरोक्त स्टेटमेंट में, कंपोजिट इंडेक्स में तीन कॉलम c2, c3, और c4 होते हैं।

कंपोजिट इंडेक्स को मौजूदा टेबल में 'CREATE INDEX' स्टेटमेंट का उपयोग करके भी जोड़ा जा सकता है। आइए देखें कि यह कैसे किया जा सकता है:

क्वेरी

CREATE INDEX index_name ON table_name(c2,c3,c4);

आइए देखें कि कंपोजिट इंडेक्स का उपयोग करके धीमी क्वेरी को कैसे तेज किया जा सकता है:

  • क्वेरी निष्पादन की गति इसकी अवधि पर निर्भर करती है।

  • इंडेक्स हिंट्स का उपयोग क्वेरी गति को सक्षम करेगा।

  • MySQL ऑप्टिमाइज़र का उपयोग इंडेक्स चुनते समय सही निर्णय लेने के लिए किया जा सकता है।

  • लेकिन यह केवल स्टेटिक क्वेरीज पर किया जाना चाहिए।

  • यदि क्वेरीज जोड़ी जाती हैं जहां 'WHERE' क्लॉज़ बदलता है, तो क्वेरीज का प्रदर्शन खराब हो जाएगा, क्योंकि यह ऑप्टिमाइज़र को अपना काम करने नहीं देगा।

  • 'FORCE INDEX' स्टेटमेंट 'USE INDEX (index_list)' की तरह कार्य करता है, इसके अलावा एक टेबल स्कैन को एक महंगा कार्य माना जाता है।

  • टेबल स्कैन केवल तभी आवश्यक होता है जब नामित इंडेक्स का उपयोग करके टेबल में रो खोजने का कोई तरीका न हो।


  1. - MySQL क्वेरी दर्ज करना

    कंसोल पर क्वेरी दर्ज करने से पहले, यह सुनिश्चित करना महत्वपूर्ण है कि उपयोगकर्ता सर्वर से जुड़ा हुआ है। नीचे दी गई क्वेरी सर्वर के संस्करण संख्या और वर्तमान तारीख देगी। mysql> SELECT VERSION(), CURRENT_DATE; नोट: फंक्शन VERSION() और CURRENT_DATE केस-इनसेंसिटिव हैं। इसका मतलब version(), Version(

  1. - MySQL में उपयोगकर्ता-परिभाषित वेरिएबल का उपयोग करना

    आइए समझते हैं कि उपयोगकर्ता वेरिएबल क्या हैं और MySQL में उनका उपयोग कैसे किया जा सकता है। हम नियम भी देखेंगे: उपयोगकर्ता वेरिएबल को @var_name के रूप में लिखा जाता है। यहां, var_name वेरिएबल नाम को संदर्भित करता है, जिसमें अल्फान्यूमेरिक कैरेक्टर, ., _, और $ होते हैं। एक उपयोगकर्ता वेरिएबल नाम में

  1. - MySQL कम्पोजिट इंडेक्स: एकाधिक कॉलम पर इंडेक्सिंग

    कम्पोजिट इंडेक्स (Composite Index) एक ऐसा इंडेक्स है जो एक साथ कई कॉलम पर बनाया जाता है। इसे मल्टी-कॉलम इंडेक्स (Multiple-Column Index) के नाम से भी जाना जाता है। मुख्य विशेषताएं MySQL आपको अधिकतम 16 कॉलम तक का कम्पोजिट इंडेक्स बनाने की अनुमति देता है। क्वेरी ऑप्टिमाइज़र उन क्वेरीज़ के लिए कम्पोजि