हमें डेटाबेस डिज़ाइन में 1-से-1 रिश्ते का उपयोग करने की आवश्यकता कब है? मेरी राय में, यदि दो टेबल 1-से-1 संबंध में हैं, तो उन्हें एक तालिका में जोड़ा जा सकता है। क्या ये सच है?जब हमें डेटाबेस डिज़ाइन में 1-से-1 संबंध का उपयोग करने की आवश्यकता है?
उत्तर
बड़े तालिकाओं के लिए कार्यक्षेत्र विभाजन आई/ओ और कैश आवश्यकताओं को कम करने - अलग-अलग कॉलम है कि अक्सर बनाम शायद ही कभी पूछे जाते हैं।
alter table
"बहुत महंगा" होने पर उत्पादन प्रणाली में कॉलम जोड़ना।Super-type/subtype पैटर्न।
तालिका (शामिल) उन्मूलन से लाभ उठाने के लिए लंबवत विभाजन - ऑप्टिमाइज़र प्रदान करने से इसका समर्थन करता है (फिर से I/O और कैश को कम करने के लिए)।
Anchor modeling - 4 समान है, लेकिन 6NF करने के लिए नीचे।
हाँ सामान्य रूप से।
एक अपवाद हो सकता है यदि आप कॉलम के सबसेट में अलग-अलग विशेषाधिकार असाइन करना चाहते हैं।
यह भी मानते हैं कि यह केवल तभी सही है जब दोनों पक्षों की आवश्यकता हो।
एक कारण है कि एक टेबल में अक्सर एक्सेस किया गया डेटा और किसी अन्य तालिका में बेहद कम से कम डेटा डालना होगा। यह तेजी से दौड़ जाएगा और कुछ स्मृति बचाएगा।
लेकिन मुझे ऐसा करने से पहले मेरी बांह को मुश्किल से मोड़ना होगा।
अवसर पर यह टेबल ताले के लिए उपयोगी है। जब आप किसी डेटाबेस में कॉलम जोड़ते हैं, तो पूरी तालिका तब तक लॉक हो जाती है जब तक कि यह पूरी तरह से पुनर्लेखित न हो जाए। आपके डेटाबेस में 100k पंक्तियां होने पर इसका कोई प्रभाव नहीं पड़ता है। लेकिन अगर आपके पास 100 एम पंक्तियां हैं, या 1 बी पंक्तियां हैं, तो यह एक पूरी तरह से अलग कहानी है ...
मृत पंक्तियों से बचने के लिए भी उपयोगी है जो बहुत अधिक जगह लेते हैं। यदि आप MVCC का उपयोग कर रहे हैं और आपके कुछ कॉलम नियमित रूप से अधिलेखित होते हैं, तो कभी-कभी उन्हें अलग तालिका में रखने का अर्थ होता है। तर्कसंगत रूप से, ऑटो-वैक्यूमिंग अंततः अंदर आती है, लेकिन हार्ड ड्राइव के काम को कम करने के लिए, टेक्स्ट, वर्कर (एन) से भरा संपूर्ण पंक्तियों के पूरे समूह की तुलना में अलग-अलग टेबल में कुछ int फ़ील्ड को बेहतर वैक्यूम करें और कौन और जानता है।
ओआरएम में select *
का अंतिम कारण दुर्व्यवहार होगा। यदि आप छवियों या ब्लॉग पोस्ट/आलेखों को संग्रहीत कर रहे हैं, उदाहरण के लिए, ब्लॉब/टेक्स्ट फ़ील्ड को एक अलग तालिका में स्टोर करने का अर्थ हो सकता है। क्योंकि हर बार जब यह किसी कारण या दूसरे के लिए लोड हो जाता है, तो आपका ओआरएम पूरी पंक्ति लोड करने जा रहा है। जब आपको केवल अपनी छवि या पोस्ट के यूआरएल की आवश्यकता होती है, तो आखिरी चीज जो आप चाहते हैं वह डेटाबेस से संपूर्ण बाइनरी/टेक्स्ट खींचना है; और अभी तक अपने ORM सिर्फ इतना है कि क्या करेंगे ...
- 1. हमें डिज़ाइन पैटर्न की आवश्यकता क्यों है
- 2. हमें डेटाबेस टेबल्स में ऑडिट कॉलम की आवश्यकता क्यों है?
- 3. जब हमें एक से अधिक EntityManager की आवश्यकता होती है?
- 4. हमें एक अस्थायी डेटाबेस की आवश्यकता क्यों है?
- 5. हमें RuntimeException में प्रयास करने की आवश्यकता क्यों नहीं है?
- 6. क्या हमें टीसीएल में चर "अनसेट" करने की आवश्यकता है?
- 7. हमें strdup() की आवश्यकता क्यों है?
- 8. . हमें System.gc(); को कॉल करने की आवश्यकता क्यों है ??
- 9. हमें संरचना की आवश्यकता क्यों है? (सी #)
- 10. हमें जावा में शिफ्ट ऑपरेटर का उपयोग करने की आवश्यकता क्यों है?
- 11. हमें [ब्राउज़ करने योग्य (सत्य)] का उपयोग करने की आवश्यकता कब है?
- 12. हमें लक्ष्य नामस्थान की आवश्यकता क्यों है?
- 13. एमवीसी: हमें "नियंत्रक" की आवश्यकता क्यों है, या हमें इस पैटर्न का उपयोग कब करना चाहिए?
- 14. हमें "आउट" पैरामीटर की आवश्यकता क्यों है?
- 15. हमें सी # प्रतिनिधियों की आवश्यकता क्यों है
- 16. हमें फ़ील्ड टैग की आवश्यकता क्यों है?
- 17. हमें वेब-सॉकेट की आवश्यकता क्यों है?
- 18. हमें "हटाएं []" ऑपरेटर की आवश्यकता क्यों है?
- 19. हमें प्रत्येक थ्रेड के लिए एनएसएयूटोरिस्लीपूल का उपयोग करने की आवश्यकता क्यों है?
- 20. हमें यहां टाइपनाम की आवश्यकता क्यों है?
- 21. हमें सी ++ में शुद्ध आभासी विनाशक की आवश्यकता क्यों है?
- 22. हमें कक्षा का उपयोग कब करना चाहिए और जब हमें
- 23. किस मामले में हमें सुरक्षित विरासत की आवश्यकता है?
- 24. क्या हमें हमेशा async कीवर्ड का उपयोग करने की आवश्यकता है?
- 25. हमें फ़्लोट का उपयोग करने की आवश्यकता कब होती है। पॉजिटिव इन्फिनिटी और फ्लोट। नकारात्मक इन्फिनिटी?
- 26. हमें जावा में इंटरफेस की आवश्यकता क्यों है?
- 27. हमें मॉलोक रिटर्न डालने की आवश्यकता क्यों है?
- 28. राइनो मोक्स - क्या हमें वास्तव में स्टब्स की आवश्यकता है?
- 29. हमें सजावटी डिजाइन पैटर्न में सजावट की आवश्यकता क्यों है?
- 30. हमें हडोप स्टैक में ज़ूकीपर की आवश्यकता क्यों है?