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