मैं कहूंगा कि आपने यहां अपने प्रश्न का उत्तर दिया है।
मेरे पास मेरे ऐप के हिस्से के लिए mongodb का उपयोग करने का एक अच्छा कारण है।
मान लें कि आपके पास अन्य भागों को MySQL में रखने का भी एक अच्छा कारण है, मैं कहूंगा कि जवाब हाँ है। आपका प्रश्न इंगित करता है (कम से कम मेरे लिए) कि आपके पास विभिन्न विकल्पों और उनकी ताकत और कमजोरियों की अच्छी और अच्छी तरह से शोध की गई समझ है और इसलिए आपके मॉडलों को विभाजित करने में एक समझदार निष्कर्ष तक पहुंच गया है।
मानते हैं कि दो हिस्सों को किसी तरह से जोड़ा नहीं जाता है (बाद में दर्द के लिए नुस्खा की तरह दो आवाज़ों के बीच संबंध), मैं सुझाव दूंगा कि आप इसके लिए जाएं और प्रत्येक उपकरण का सर्वोत्तम उपयोग करें।
माइकल इस दृष्टिकोण के साथ उठाए गए कुछ चिंताओं को संबोधित करना संभव है। चूंकि आप रेल का उपयोग करने पर ध्यान केंद्रित कर रहे हैं, तो आप अपने MySQL- आधारित मॉडल के लिए ActiveRecord का उपयोग कर सकते हैं और अपने मोंगोडीबी आधारित मॉडल के लिए MongoMapper का उपयोग कर सकते हैं। इस तरह, आपको दो पूरी तरह से अलग पूछताछ विधियों से निपटने की आवश्यकता नहीं होगी क्योंकि MongoMapper एक बहुत ही सक्रिय रिकॉर्ड दृष्टिकोण प्रदान करता है। बेशक, जब आप की आवश्यकता होती है तो आप आसानी से मोंगो-विशिष्ट पूछताछ में उतर सकते हैं।
संबंधों के संबंध में चिंता क्रॉस-डीबी मेरी राय में मान्य है और यदि यह कुछ है तो आप बहुत कुछ खत्म कर देंगे, मैं निश्चित रूप से यह सुनिश्चित करने के लिए स्थिति की जांच करने की सलाह दूंगा कि यह कुछ ऐसा है जो आप जीने में खुश हैं साथ में। मुझे लगता है कि आप उस विशेष मामले में बाद में बहुत दर्द बचा सकते हैं।
कुल मिलाकर, मैं सुझाव दूंगा कि जब तक आपके दो हिस्सों को एक-दूसरे से अपेक्षाकृत डिस्कनेक्ट किया जाता है, तो एक विभाजन-व्यक्तित्व दृढ़ता परत आपके लिए अच्छी तरह से काम करेगी।
स्रोत
2010-03-19 09:13:23
असली दुनिया के उदाहरण के लिए कूल धन्यवाद! –
क्या आप एक कॉच डीबी कनेक्टर का उपयोग करते हैं, या केवल आरईएसटी के माध्यम से सीधे कॉल करते हैं? मेरे पास एक परिदृश्य है जो दोनों का उपयोग करने के लिए भी समझ में आता है, और मुझे यकीन नहीं है कि बीच में एक सक्रिय रिकॉर्ड परत सार्थक है क्योंकि कॉल बहुत अधिक पुनर्प्राप्त और चलेंगे। – eddieroger