अपने डेटाबेस को सामान्यीकृत करना
यदि आप थोड़ी देर के लिए डेटाबेस के साथ काम कर रहे हैं, तो संभावना है कि आपने सामान्यीकरण शब्द सुना है। शायद किसी ने आपको पूछा है "क्या वह डेटाबेस सामान्य है?" या "क्या वह बीसीएनएफ में है ?" सामान्यीकरण अक्सर एक विलासिता के रूप में अलग किया जाता है जिसे केवल शिक्षाविदों के लिए समय होता है। हालांकि, सामान्यीकरण के सिद्धांतों को जानना और उन्हें अपने दैनिक डेटाबेस डिज़ाइन कार्यों में लागू करना वास्तव में इतना जटिल नहीं है और यह आपके डीबीएमएस के प्रदर्शन में काफी सुधार कर सकता है।
इस लेख में, हम सामान्यीकरण की अवधारणा को पेश करेंगे और सबसे सामान्य सामान्य रूपों पर एक संक्षिप्त रूप देखेंगे।
सामान्यीकरण क्या है?
सामान्यीकरण डेटाबेस में डेटा व्यवस्थित रूप से व्यवस्थित करने की प्रक्रिया है। सामान्यीकरण प्रक्रिया के दो लक्ष्य हैं: अनावश्यक डेटा को समाप्त करना (उदाहरण के लिए, एक से अधिक तालिका में एक ही डेटा को संग्रहीत करना) और डेटा निर्भरताओं को सुनिश्चित करना (केवल तालिका में संबंधित डेटा संग्रह करना) समझना। ये दोनों योग्य लक्ष्य हैं क्योंकि वे डेटाबेस की मात्रा को कम करते हैं और सुनिश्चित करते हैं कि डेटा तार्किक रूप से संग्रहीत है।
सामान्य रूप
डेटाबेस समुदाय ने यह सुनिश्चित करने के लिए दिशानिर्देशों की श्रृंखला विकसित की है कि डेटाबेस सामान्यीकृत हैं। इन्हें सामान्य रूपों के रूप में जाना जाता है और पांच (पांचवें सामान्य रूप या 5 एनएफ) के माध्यम से एक (न्यूनतम सामान्यीकरण का सामान्य रूप, जिसे पहले सामान्य रूप या 1 एनएफ कहा जाता है) से गिना जाता है। व्यावहारिक अनुप्रयोगों में, आप कभी-कभी 4 एनएफ के साथ 1 एनएफ, 2 एनएफ, और 3 एनएफ देखेंगे। पांचवें सामान्य रूप को बहुत ही कम देखा जाता है और इस लेख में चर्चा नहीं की जाएगी।
सामान्य रूपों की हमारी चर्चा शुरू करने से पहले, यह इंगित करना महत्वपूर्ण है कि वे केवल दिशानिर्देश और दिशानिर्देश हैं। कभी-कभी, व्यावहारिक व्यावसायिक आवश्यकताओं को पूरा करने के लिए उनसे भटकना आवश्यक हो जाता है। हालांकि, जब भिन्नता होती है, तो संभव है कि आपके सिस्टम पर संभावित संभावित विसंगतियों का मूल्यांकन करना संभव हो और संभावित विसंगतियों के लिए खाता हो। उस ने कहा, चलो सामान्य रूपों का पता लगाएं।
पहला सामान्य फॉर्म (1 एनएफ)
पहला सामान्य रूप (1 एनएफ) एक संगठित डेटाबेस के लिए बहुत ही बुनियादी नियम निर्धारित करता है:
- एक ही तालिका से डुप्लिकेटिव कॉलम हटाएं।
- संबंधित डेटा के प्रत्येक समूह के लिए अलग-अलग टेबल बनाएं और प्रत्येक पंक्ति को एक अद्वितीय कॉलम या कॉलम के सेट ( प्राथमिक कुंजी ) के साथ पहचानें।
दूसरा सामान्य फॉर्म (2 एनएफ)
द्वितीय सामान्य रूप (2 एनएफ) डुप्लिकेटिव डेटा को हटाने की अवधारणा को आगे बढ़ाता है:
- पहले सामान्य रूप की सभी आवश्यकताओं को पूरा करें।
- तालिका के एकाधिक पंक्तियों पर लागू होने वाले डेटा के सबसेट हटाएं और उन्हें अलग-अलग तालिकाओं में रखें।
- विदेशी कुंजी के उपयोग के माध्यम से इन नई तालिकाओं और उनके पूर्ववर्तियों के बीच संबंध बनाएं।
तीसरा सामान्य फॉर्म (3 एनएफ)
तीसरा सामान्य रूप (3 एनएफ) एक बड़ा कदम आगे जाता है:
- दूसरे सामान्य रूप की सभी आवश्यकताओं को पूरा करें।
- उन स्तंभों को हटाएं जो प्राथमिक कुंजी पर निर्भर नहीं हैं।
बॉयस-कोडड सामान्य फॉर्म (बीसीएनएफ या 3.5 एनएफ)
बॉयस-कोडड सामान्य फॉर्म, जिसे "तीसरा और आधा (3.5) सामान्य रूप" भी कहा जाता है, एक और आवश्यकता को जोड़ता है:
- तीसरे सामान्य रूप की सभी आवश्यकताओं को पूरा करें।
- प्रत्येक निर्धारक उम्मीदवार कुंजी होना चाहिए ।
चौथा सामान्य फॉर्म (4 एनएफ)
अंत में, चौथे सामान्य रूप (4 एनएफ) की एक अतिरिक्त आवश्यकता है:
- तीसरे सामान्य रूप की सभी आवश्यकताओं को पूरा करें।
- यदि कोई बहु-मूल्यवान निर्भरता नहीं है तो एक संबंध 4 एनएफ में है।
याद रखें, इन सामान्यीकरण दिशानिर्देश संचयी हैं। डेटाबेस के लिए 2 एनएफ में होना, इसे पहले 1 एनएफ डेटाबेस के सभी मानदंडों को पूरा करना होगा।
क्या मुझे सामान्यीकृत करना चाहिए?
जबकि डेटाबेस सामान्यीकरण अक्सर एक अच्छा विचार है, यह एक पूर्ण आवश्यकता नहीं है। वास्तव में, ऐसे कुछ मामले हैं जहां जानबूझकर सामान्यीकरण के नियमों का उल्लंघन करना एक अच्छा अभ्यास है। इस विषय पर अधिक जानकारी के लिए, क्या मुझे अपना डेटाबेस सामान्यीकृत करना चाहिए?
यदि आप यह सुनिश्चित करना चाहते हैं कि आपका डेटाबेस सामान्यीकृत है, तो सीखें कि अपने डेटाबेस को पहले सामान्य फॉर्म में कैसे रखा जाए ।