कहें कि मेरे पास दो संग्रह हैं, प्रत्येक एक दूसरे से स्वतंत्र मूल्य के साथ, लेकिन प्रत्येक एक दूसरे से संबंधित है। वे photos
और users
हैं। उपयोगकर्ताओं और तस्वीरों के बीच एक से अधिक संबंध हैं।NoSQL में denormalized स्थिरता को बनाए रखने के लिए कैसे?
denormalized डेटा का एक उदाहरण:
users:
{
"id": "AABC",
"name": "Donna Smith"
}
photos:
{
"id": "FAD4",
"description": "cute dog",
"user_id": "AABC", // This is the relationship
"user_name": "Donna Smith" // This is the denormalized value from the "users" collection
}
मैं photos
संग्रह जब उपयोगकर्ता "AABC" "डोना स्मिथ" के लिए "डोना चांग" से नाम बदल में दस्तावेजों के साथ संगति यह कैसे सुनिश्चित कर सकते हैं?
गैर-लेनदेन होने के नाते, मुझे लगता है कि स्थिरता अंतिम होने जा रही है।
उपयोगकर्ता (एएबीसी) सभी उपयोगकर्ताओं को अपडेट करने के लिए उपयोगकर्ता "एएबीसी" में परिवर्तन के बाद एक साधारण (बेवकूफ) कार्यान्वयन पृष्ठभूमि पृष्ठभूमि को ट्रिगर कर सकता है। और एक ही अद्यतन के मामले में, यह अच्छी तरह से काम करेगा। लेकिन यह एक बहु-उपयोगकर्ता वातावरण है, और समवर्ती रूप से सभी दिशाओं में उड़ानें अपडेट होने जा रही हैं। क्या होगा, उदाहरण के लिए, "डोना स्मिथ" को "डोना चांग" में बदलने के लिए तस्वीरों के पृष्ठभूमि अपडेट के माध्यम से आधे रास्ते, उपयोगकर्ता "एएबीसी" का नाम वापस "डोना स्मिथ" में बदल दिया गया है?
ऑनलाइन खोजना, मुझे मॉडल डिमॉर्मलाइज्ड डेटा के बारे में बहुत सी चर्चाएं दिखाई देती हैं। लेकिन को को बनाए रखने के बारे में कोई भी चर्चा यह प्रतीत होती है कि "आपको सभी संबंधित रिकॉर्ड अपडेट करने की भी आवश्यकता होगी"। क्या कोई परिदृश्य है जो इस परिदृश्य में आपके लिए भारी उठाने वाला है? कोई ढांचा या उपयोगिताओं?
मैंने "भौतिक दृश्यों" के विषय पर Thomas Wanschik's excellent blog articles पढ़ा है और वास्तव में इस परिदृश्य के लिए पृष्ठभूमि अपडेट पढ़े हैं। लेकिन मैं छोड़ रहा हूँ चिंतित हैं कि:
- पृष्ठभूमि नौकरियों अधिकतम समय अद्यतन (कैसे मुझे लगता है कि देरी का निर्धारण है के लिए अनुमति दी से अधिक से अधिक एक पूर्व निर्धारित मात्रा में विलंबित किया जाना चाहिए क्या एक ऑपरेशन में अधिक समय लगता है, तो ?), तथा;
- यह केवल चर्चा है जिसे मैंने अभी तक एक व्यावहारिक समाधान पाया है। नोएसक्यूएल एक बड़ा सौदा सही है, मैं इस बारे में और अधिक चर्चा क्यों नहीं देख रहा हूं? मैं क्या खो रहा हूँ?
कोई विचार? मैंने नोएसक्यूएल की लोकप्रियता के साथ सोचा होगा, यह एक "हल" समस्या होगी। – Snixtor