डेटाबेस के बारे में बहुत पहले बात करने वाले को यह जानना चाहिए कि डेटाबेस क्या हैं ? न कि वे कैसे काम करते हैं, न ही आप एक का निर्माण कैसे करते हैं, और न ही आप किसी डेटाबेस में डेटा को पुनः प्राप्त या अपडेट करने के लिए कोड कैसे लिखते हैं। लेकिन वे किस लिए हैं?
दुर्भाग्य से, इस एक का जवाब एक चलती लक्ष्य है। डेटाबेस के हेयड में, 1970 के दशक के शुरुआती दौर में, डेटाबेस डेटा के बंटवारे के लिए थे। यदि आप एक डेटाबेस का उपयोग कर रहे थे, और आप डेटा साझा नहीं कर रहे थे, तो आप एक अकादमिक परियोजना में शामिल थे या आप अपने आप सहित संसाधनों को बर्बाद कर रहे थे। एक डेटाबेस की स्थापना और एक DBMS का नामकरण ऐसे स्मारकीय कार्य थे जो कई बार शोषित डेटा के संदर्भ में, निवेश से मेल खाने के लिए भारी पड़ते थे।
पिछले 15 वर्षों में, डेटाबेस का उपयोग केवल एक एप्लिकेशन से जुड़े लगातार डेटा को संग्रहीत करने के लिए किया गया है। MySQL , या Access , या SQL सर्वर के लिए एक डेटाबेस का निर्माण इतना नियमित हो गया है कि डेटाबेस लगभग एक साधारण अनुप्रयोग का एक नियमित हिस्सा बन गए हैं। कभी-कभी, मिशन के रेंगने से वह प्रारंभिक सीमित मिशन ऊपर की ओर बढ़ जाता है, क्योंकि डेटा का वास्तविक मूल्य स्पष्ट हो जाता है। दुर्भाग्य से, डेटाबेस जो एक ही उद्देश्य को ध्यान में रखते हुए तैयार किए गए थे, अक्सर नाटकीय रूप से विफल हो जाते हैं जब उन्हें एक भूमिका में धकेल दिया जाता है जो उद्यम व्यापक और मिशन महत्वपूर्ण होता है।
डेवलपर्स के बारे में दूसरी चीज़ जो डेटाबेस के बारे में जानने की ज़रूरत है, वह है दुनिया का संपूर्ण डेटा केंद्रित दृश्य । डेटा केंद्रित दुनिया का दृश्य प्रक्रिया केंद्रित दुनिया के दृष्टिकोण से अधिक भिन्न है, जो कि अधिकांश डेवलपर्स ने कभी सीखा है। इस अंतर की तुलना में संरचित प्रोग्रामिंग और ऑब्जेक्ट ओरिएंटेड प्रोग्रामिंग के बीच का अंतर अपेक्षाकृत कम है।
तीसरी चीज़ डेवलपर्स को सीखने की ज़रूरत है, कम से कम एक सिंहावलोकन में, डेटा मॉडलिंग है, जिसमें वैचारिक डेटा मॉडलिंग, तार्किक डेटा मॉडलिंग और भौतिक डेटा मॉडलिंग शामिल है।
वैचारिक डेटा मॉडलिंग वास्तव में डेटा केंद्रित दृष्टिकोण से विश्लेषण की आवश्यकता है।
लॉजिकल डेटा मॉडलिंग आम तौर पर वैचारिक डेटा मॉडलिंग में खोजी गई आवश्यकताओं के लिए एक विशिष्ट डेटा मॉडल का अनुप्रयोग है। रिलेशनल मॉडल किसी अन्य विशिष्ट मॉडल की तुलना में कहीं अधिक उपयोग किया जाता है, और डेवलपर्स को सुनिश्चित करने के लिए रिलेशनल मॉडल को सीखने की आवश्यकता होती है। एक nontrivial आवश्यकता के लिए एक शक्तिशाली और प्रासंगिक संबंधपरक मॉडल डिजाइन करना एक तुच्छ कार्य नहीं है। यदि आप संबंधपरक मॉडल को गलत समझते हैं तो आप अच्छी SQL टेबल नहीं बना सकते।
भौतिक डेटा मॉडलिंग आम तौर पर डीबीएमएस विशिष्ट है, और इसे बहुत विस्तार से सीखने की आवश्यकता नहीं है, जब तक कि डेवलपर भी डेटाबेस निर्माता या डीबीए नहीं है। डेवलपर्स को समझने की आवश्यकता है कि किस हद तक भौतिक डेटाबेस डिज़ाइन को तार्किक डेटाबेस डिज़ाइन से अलग किया जा सकता है, और जिस हद तक उच्च गति डेटाबेस का उत्पादन किया जा रहा है, वह केवल भौतिक डिज़ाइन को ट्विक करके पूरा किया जा सकता है।
अगली बात यह है कि डेवलपर्स को सीखने की ज़रूरत है कि गति (प्रदर्शन) महत्वपूर्ण है, डिजाइन अच्छाई के अन्य उपाय और भी महत्वपूर्ण हैं , जैसे कि सड़क के नीचे डेटाबेस के दायरे को संशोधित करने और विस्तारित करने की क्षमता, या प्रोग्रामिंग की सादगी।
अंत में, जो कोई भी डेटाबेस में गड़बड़ी करता है, उसे यह समझने की आवश्यकता है कि डेटा का मूल्य अक्सर उस सिस्टम को रेखांकित करता है जिसने इसे कैप्चर किया था ।
वाह!