मेरे पास एक MySQL डेटाबेस में आयात करने के लिए लगभग 28 मिलियन रिकॉर्ड हैं। रिकॉर्ड में अमेरिका के सदस्यों के बारे में व्यक्तिगत जानकारी है और राज्यों द्वारा खोजे जा सकेंगे।एक बड़ी mySql तालिका को छोटे में विभाजित करना - क्या यह इसके लायक है?
मेरा सवाल यह है कि, टेबल को एक बड़ी तालिका में रखने के विरोध में छोटी टेबलों में तालिका को तोड़ना अधिक कुशल है? मेरे मन में जो कुछ था, उन्हें 50 अलग-अलग राज्यों में विभाजित करना था जो 50 राज्यों का प्रतिनिधित्व करते थे: members_CA, members_AZ, members_TX, आदि;
इस तरह से मैं इस तरह एक प्रश्न कर सकता है:
'SELECT * FROM members_' . $_POST['state'] . ' WHERE members_name LIKE "John Doe" ';
इस तरह से मैं केवल एक ही बार में किसी दिए गए राज्य के लिए डेटा से निपटने के लिए। सहजता से यह बहुत समझ में आता है लेकिन मैं अन्य राय सुनने के लिए उत्सुक होगा।
अग्रिम धन्यवाद।
तो, यदि आप सभी राज्यों में उपयोगकर्ता नाम खोजते हैं, तो आप 50 जोड़ों का उपयोग करेंगे? – Jacob
आप कभी भी, जो वर्णन आपने नहीं किया है, कभी नहीं करना चाहते। इसे 1 टेबल में रखें, इसे 50 टेबल में कभी विभाजित न करें। विभाजन नामक कुछ है और MySQL आपको कुछ नियमों के अनुसार अपनी तालिका को विभाजित करने की अनुमति देता है। इसे खोजें और इसे वहां से ले जाएं, और कभी भी, एक विशेषता में कुछ अलग होने पर कभी भी एक अलग तालिका बनाने के बारे में सोचें। यह डरावना डीबी डिजाइन और बनाए रखने के लिए एक दुःस्वप्न है, अकेले उपयोग करते हैं। –