चूंकि आपने इस बारे में पूछा था कि बड़ी कंपनियां (आम तौर पर) इस तक कैसे पहुंचती हैं:
उनके पास आमतौर पर एक डीबीए (डेटाबेस प्रशासक) होता है जो कंपनी द्वारा उपयोग किए जाने वाले डेटाबेस में रहता है और सांस लेता है।
इसका मतलब है कि उनके पास ऐसे लोग हैं जो टेबल को बेहतर तरीके से डिजाइन करने, प्रोफाइल और क्वेरी/इंडेक्स/ओएस/सर्वर को ट्यून करने से लेकर यह जानने तक कि RAID कंट्रोलर के फर्मवेयर रिवीजन से सब कुछ जानते हैं जो डेटाबेस के लिए समस्या पैदा कर सकता है।
आपने किस तरह की ट्यूनिंग की है, इस बारे में आप ज्यादा बात नहीं करते, उदा.
- क्या आप MyISAM या InnoDB तालिकाओं का उपयोग कर रहे हैं? उनका प्रदर्शन (और कम से कम उनकी विशेषताएं नहीं) अलग-अलग कार्यभार के लिए मौलिक रूप से भिन्न हैं।
- क्या आपके द्वारा चलाई जा रही क्वेरी के अनुसार टेबल को ठीक से अनुक्रमित किया गया है?
- अपने सभी प्रश्नों पर EXPLAIN चलाएं - जो आपको उन कुंजियों की पहचान करने में मदद करेगा जिन्हें जोड़ा / हटाया जा सकता है, उचित कुंजियों का चयन किया जाता है, प्रश्नों की तुलना करें (SQL आपको समान चीजों को पूरा करने के लिए बहुत सारे रास्ते देता है)
- क्या आपने क्वेरी-कैश को ट्यून किया है? कुछ कार्यभार के लिए क्वेरी कैश (डिफ़ॉल्ट चालू) काफी मंदी का कारण बन सकता है।
- आपके बॉक्स में कितनी मेमोरी है और क्या इसका लाभ उठाने के लिए mysql को ट्यून किया गया है?
- क्या आप डेटाबेस के लिए तैयार फ़ाइल सिस्टम और रेड सेटअप का उपयोग करते हैं?
- कभी-कभी थोड़ा सामान्यीकरण करने की आवश्यकता होती है।
- अलग-अलग डेटाबेस उत्पादों में अलग-अलग विशेषताएँ होंगी, MySQL कुछ वर्लकोड्स के लिए बहुत तेज़ और दूसरों के लिए धीमा हो सकता है।