टी एल; डॉ
RDBMS में सामान्यीकरण आपको रिलेशनल प्रतिमान की ताकत का लाभ उठाने की अनुमति देता है।
NoSQL में असामान्यता आपको NoSQL प्रतिमान की ताकत का लाभ उठाने की अनुमति देती है।
लंबा जवाब
RDBMS महान हैं क्योंकि वे आपको अद्वितीय संरचित संस्थाओं (परस्पर या नहीं) और उनके संबंधों को एक दूसरे के साथ जोड़ते हैं। इसका मतलब यह है कि इकाई स्तर पर काम करना बहुत आसान है, उनके गुणों को अपडेट करना, किसी अन्य को सम्मिलित करना, एक को हटाना, आदि। लेकिन यह उन्हें गतिशील रूप से एकत्र करने के लिए भी बहुत अच्छा है, एक कुत्ता अपने मालिक के साथ, एक कुत्ता जिसके घरों में निवास होता है, आदि। । RDBMS आपको यह सब सुविधा प्रदान करने के लिए उपकरण देता है। यह आपके लिए जुड़ जाएगा, यह आपके लिए संस्थाओं में परमाणु परिवर्तन आदि को संभाल लेगा।
NoSQL डेटाबेस महान हैं क्योंकि वे आपको सेमी / अनस्ट्रक्चर्ड एग्रीगेट्स और डायनेमिक इकाइयाँ मॉडल करते हैं। इसका मतलब यह है कि कभी भी बदलती संस्थाओं, संस्थाओं को मॉडल करना बहुत आसान है जो सभी समान विशेषताओं और श्रेणीबद्ध समुच्चय को साझा नहीं करते हैं।
NoSql के लिए मॉडल करने के लिए, आपको संस्थाओं और संबंधों के बजाय पदानुक्रम और समुच्चय के संदर्भ में सोचने की आवश्यकता है। इसलिए आपके पास व्यक्ति, किराये के पते और उनके बीच कोई संबंध नहीं है। आपके पास किराये के रिकॉर्ड हैं जो प्रत्येक व्यक्ति के लिए समग्र हैं जो किराये के पते उनके पास है।
आपको यह पूछने की ज़रूरत है, मुझे एक साथ क्या डेटा बदलने की आवश्यकता होगी। क्या डेटा तार्किक रूप से दूसरे डेटा को समूहीकृत कर रहा है। आपके मामले में एक व्यक्ति एक अच्छे कुल की तरह लगता है। बाकी डेटा के प्रति तार्किक प्रविष्टि बिंदु क्या है।
NoSQL आइए आपको बताते हैं, एक ऐसी चीज को स्टोर करें जिसमें अन्य चीजें हैं जिनकी अपनी चीजें हैं। मुझे चीजों का पूरा पदानुक्रम वापस दे दो। मुझे कृपया इसे बदलने दें, अब मेरे बदले हुए चीज़ के पूरे पदानुक्रम को बदल दें। यह सब बहुत कुछ यह आपको देता है। क्यों उपयोगी है? यदि आपके पास जो चीजें हैं, वह उन चीजों का एक पदानुक्रम है, जिन्हें आप हमेशा एक पूरे के साथ बातचीत करते हैं। या यदि आपको बड़े पैमाने पर करने की आवश्यकता है।
आरडीबीएमएस आपको देता है हर चीज, आपको कोड और अपने स्कीमा में मैन्युअल रूप से लागू करना होगा। यदि आपको कभी समुच्चय की आवश्यकता हो तो आपको कोड में शामिल होना होगा। यदि आपको किसी समुच्चय के केवल भाग की आवश्यकता है, तो आपको पार्स करना होगा। यदि आप डुप्लिकेट चीजों को नहीं चाहते हैं, तो आपको स्वयं विशिष्टता की जांच करने की आवश्यकता होगी। आपको समुच्चय आदि पर काम करते समय अपने स्वयं के लेन-देन के तर्क को लागू करना होगा।
तो आपकी जरूरत की हर चीज के साथ एक बड़ी मेज है, जो कि NoSql में जाने का रास्ता है। चूँकि उस स्तर पर ही परमाणु की गारंटी होती है, और प्रदर्शन भी। अपने संबंधों का जल्द पता लगाना महत्वपूर्ण है। यह वह है जो विकृति है।
RDBMS में, भाज्यकरण प्रभावी रूप से आपके DB को NoSQL के लिए अपंग करता है। तो सामान्य रूप से आप विपरीत चाहते हैं, अर्थात सामान्यीकरण। यदि आप नहीं करते हैं, तो आपको इसके बजाय NoSQL DB का उपयोग करना चाहिए। जब तक आपको दोनों की थोड़ी जरूरत न हो।