13

मैं वर्तमान में डेटाबेस बनाने की कोशिश कर रहा हूं जहां डेटा का एक बहुत बड़ा प्रतिशत अस्थायी है। ऐसा करने के लिए कई तकनीकों को पढ़ने के बाद (सबसे अधिक 6 एनएफ सामान्यीकरण शामिल) मैं Anchor Modeling में भाग गया।एंकर मॉडलिंग के पेशेवरों और विपक्ष क्या हैं?

मैं जिस स्कीमा को विकसित कर रहा था वह दृढ़ता से एंकर मॉडलिंग मॉडल जैसा दिखता था, खासकर जब उपयोग केस (टेम्पोरल डेटा + ज्ञात अज्ञात) इतना समान है, कि मैं इसे पूरी तरह से गले लगाने के लिए प्रेरित हूं।

मेरे पास होने वाली दो सबसे बड़ी समस्या यह है कि मुझे इस दृष्टिकोण के नकारात्मक विवरणों का विवरण नहीं मिल रहा है, और मुझे उन संगठनों के लिए कोई संदर्भ नहीं मिल रहा है जिन्होंने युद्ध-कहानियों और गठजोड़ों के उत्पादन में इसका उपयोग किया है जिन्हें मुझे अवगत होना चाहिए का।

मुझे आश्चर्य है कि यहां कोई भी व्यक्ति कुछ नकारात्मकों पर संक्षिप्त रूप से विस्तार करने के लिए पर्याप्त परिचित है (क्योंकि सकारात्मक शोध पत्रों और उनकी साइट में सकारात्मक रूप से विज्ञापित हैं), और उत्पादन वातावरण में इसका उपयोग करने के साथ किसी भी अनुभव।

उत्तर

12

anchormodeling.com

यहाँ के संदर्भ में कुछ बिंदुओं मैं

  1. डीबी वस्तुओं की संख्या के बारे में पता कर रहा हूँ मैन्युअल रूप से बनाए रखने, तो सुनिश्चित करें कि आप डिजाइनर का उपयोग करने के लिए बस बहुत बड़ी है कर रहे हैं स्कीमा विकसित करने के लिए हर समय।

  2. वर्तमान में, डिजाइनर पूरी तरह से एमएस एसक्यूएल सर्वर का समर्थन करता है, इसलिए यदि आपको हर समय पोर्ट कोड करना है, तो आप तब तक इंतजार करना चाहेंगे जब तक आपका लक्ष्य डीबी पूरी तरह से समर्थित न हो। मुझे पता है कि इसमें ओरेकल ड्रॉपडाउन बॉक्स में है, लेकिन ...

  3. अपने डेवलपर्स को समझने की उम्मीद न करें (न ही मांग), उन्हें 5 एनएफ विचारों के माध्यम से मॉडल तक पहुंचना है - जो अच्छा है। बात यह है कि टेबल (दृश्य-के-) ट्रिगर्स के माध्यम से लोड किए जाते हैं, जो एक प्रदर्शन समस्या हो सकती है (या नहीं)।

  4. उम्मीद है कि आपको कुछ अतिरिक्त रखरखाव प्रक्रियाओं (प्रत्येक अस्थायी विशेषता के लिए) लिखने की आवश्यकता हो सकती है जो स्वत: जेनरेट नहीं हैं (अभी तक)।उदाहरण के लिए, मुझे अक्सर अस्थायी विशेषताओं के लिए एक प्रूफ प्रक्रिया की आवश्यकता होती है - लगातार दो बार-ईवेंट पर एक ही आईडी के लिए समान-मूल्य-रिकॉर्ड को हटाने के लिए।

  5. जेनरेट किए गए विचार और प्रश्न-विचार-विमर्श अच्छी तरह से हल हो जाते हैं, और शायद भविष्य में आप जो कुछ भी लिखेंगे। हालांकि, "अन्य लोग" विचार-विचार-विचार-विचारों पर प्रश्न लिखेंगे - जो हमेशा अच्छी तरह से हल नहीं होते हैं। तो उम्मीद है कि आपको सामान्य से अधिक पुलिस प्रश्नों की आवश्यकता हो सकती है।

कि सभी दु: खी होने, मैं हाल ही में दृष्टिकोण मेरी गोदाम के एक हिस्से refactor करने के लिए इस्तेमाल किया है, और यह एक आकर्षण की तरह काम किया। माना जाता है कि गोदाम में यहां उल्लिखित अधिकांश समस्याएं नहीं हैं।

मैं सुझाव दूंगा कि डेमो-सिस्टम और परीक्षण, परीक्षण, परीक्षण ..., विशेष रूप से पॉइंट नंबर 3 - ट्रिगर्स के माध्यम से लोड करना आवश्यक है।

5

मैंने इस पर कोई कागजात नहीं पढ़ा है, लेकिन चूंकि यह 6 एनएफ पर आधारित है, इसलिए मुझे उम्मीद है कि यह 6 एनएफ का पालन करने वाली किसी भी समस्या से पीड़ित होगा।

6NF प्रत्येक तालिका में उम्मीदवार कुंजी और एक से अधिक गैर-कुंजी कॉलम शामिल होने की आवश्यकता होती है। तो, सबसे बुरे मामले में, आपको 10-कॉलम परिणाम सेट बनाने के लिए नौ जुड़ने की आवश्यकता होगी। लेकिन आप ऐसे डेटाबेस को भी डिज़ाइन कर सकते हैं जो 5 एनएफ में 200 टेबल, बीसीएनएफ में हैं, और केवल 5 जो 6 एनएफ में हैं, का उपयोग कर सकते हैं। (मुझे लगता है कि अब एंकर मॉडलिंग प्रति से अधिक नहीं होगा, जो कि 6 एनएफ में सभी टेबल रखता है, लेकिन मैं इसके बारे में गलत हो सकता हूं।)

मिथिकल मैन-महीना अभी भी प्रासंगिक है।

इसलिए प्रबंधन सवाल यह नहीं है कि एक पायलट प्रणाली का निर्माण करना है और इसे फेंकना है। आप ऐसा करेंगे एकमात्र सवाल यह है कि क्या फेंकने के लिए अग्रिम योजना बनाना है, या ग्राहकों को फेंकने का वादा करना है।

फ्रेड ब्रूक्स, जूनियर, में पौराणिक मैन महीना, पी 116

कैसे सस्ते में आप एक प्रोटोटाइप अपनी उम्मीद सबसे ज्यादा मामले का परीक्षण करने का निर्माण कर सकते हैं?

+0

बिल्ली, यह नहीं कि मैं यहां जो कुछ कहता हूं उससे असहमत हूं, लेकिन प्रति मॉडल (और इस तरह के मॉडल पेपर को चित्रित करने का कार्य) के बीच एक अंतर है, और उस मॉडल के कार्यान्वयन (एक परिभाषित करने का कार्य उस मॉडल को लागू करने के लिए डेटाबेस संरचना)। क्या कोई कानून है जो कहता है कि एक वैचारिक/अनौपचारिक मॉडल जो "जैसा दिखता है" 6 एनएफ जरूरी है कि इसके परिणामस्वरूप तार्किक डेटाबेस संरचना भी हो जो _IS_ 6NF? निजी तौर पर, मेरा जवाब लाइनों के साथ और अधिक होगा कि जब आप Í_formal मॉडल को आकर्षित करने के लिए तकनीक के रूप में एंकर मॉडलिंग का उपयोग कर रहे हैं, तो "इकाई" (जारी ...) में एक विशेषता " –

+0

... से अधिक वर्ग इंच लेती है जब आप ड्राइंग तकनीक के रूप में ईआर का उपयोग कर रहे हैं। अनिवार्य परिणाम के साथ कि कागज के एक निश्चित आकार को देखते हुए, एंकर मॉडलिंग ई/आर के रूप में ज्यादा (_IN_formal) जानकारी व्यक्त नहीं कर सकता है। 6 एनएफ के बजाय 5 एनएफ में एंकरिंग के साथ खींचे गए मॉडल को लागू करने से आपको वास्तव में क्या रोकता है? क्या आपको पूर्ण 6 एनएफ में ई/आर क्रॉफफुट में खींचे गए मॉडल को लागू करने से रोकता है? –

+0

@ErwinSmout: कोई संबंध नहीं है जो कहता है कि 6 एनएफ में एक वैचारिक मॉडल के परिणामस्वरूप 6 एनएफ में एक डेटाबेस होना चाहिए। मैंने लोटस नोट्स में 5 एनएफ वैचारिक मॉडल लागू किए हैं - यह लगभग 5 एनएफ * भौतिक मॉडल * के बारे में है जैसा आप प्राप्त कर सकते हैं। लेकिन मैं समझता हूं कि एंकर मॉडलिंग में, * प्रत्येक * टेबल जो एक एंकर, एक विशेषता, या गाँठ लागू करता है * 6 एनएफ में होना चाहिए। एंकर मॉडलिंग के चुस्त तरीकों का समर्थन करने के लिए 6 एनएफ में टेबल्स की आवश्यकता होती है; मुझे नहीं लगता कि आप कुछ ऐसा करने के बिना 5 एनएफ तक गिर सकते हैं जो अब "एंकर मॉडलिंग" नहीं है। (ऐसा नहीं है कि इसमें कुछ भी गलत है।) –

7

उपरोक्त बिंदु संख्या 4 के संबंध में। पुनर्स्थापन नियंत्रण लगभग समाप्त हो गया है, जैसे कि आप समय के साथ लगातार दो समान मानों को रोकने में सक्षम होंगे।

और एक सामान्य टिप्पणी, जोड़ना आवश्यक रूप से एक बुरी चीज नहीं है। पढ़ें: Why joins are a good thing

एंकर मॉडलिंग में 6 एनएफ के महान लाभों में से एक गैर-विनाशकारी स्कीमा विकास है। दूसरे शब्दों में, डेटाबेस मॉडल का हर पिछले संस्करण वर्तमान मॉडल में सबसेट के रूप में उपलब्ध है। साथ ही, चूंकि स्कीमा (नई टेबल) में एक्सटेंशन द्वारा परिवर्तनों का प्रतिनिधित्व किया जाता है, इसलिए डेटाबेस को अपग्रेड करना लगभग तत्काल होता है और सुरक्षित रूप से ऑनलाइन किया जा सकता है (यहां तक ​​कि उत्पादन वातावरण में भी)। यह लाभ 5 एनएफ में खो जाएगा।

संबंधित मुद्दे