2012-05-18 11 views
5

मैं मूल भाषा, टैग और वाईआई फ्रेमवर्क में ऐसे डेटा के साथ काम करने के लिए एक प्रणाली बनाने के लिए देख रहा हूं।Yii एक ही समय में mongo डीबी और MySQL का उपयोग

मैं पहले से ही अपने डेटा को संग्रहीत करने के लिए मोंगोडीबी चुनता हूं क्योंकि मुझे लगता है कि यह अच्छी तरह से फीट करता है और कम लागत के साथ बेहतर प्रदर्शन प्राप्त करेगा (डेटाबेस में बड़ी मात्रा में डेटा होगा)।

मेरा प्रश्न उपयोगकर्ता प्रमाणीकरण, भुगतान इत्यादि का संबंध है ... यह जानकारी और क्षेत्रों के संवेदनशील बिट्स हैं जहां मुझे लगता है कि डेटा संबंधपरक है।

तो: 1. क्या आप दो अलग-अलग डीबी सिस्टम का उपयोग करेंगे? क्या मुझे उनकी ज़रूरत है या मैं इसे जटिल बना रहा हूं? 2. यदि आप दो डीबी दृष्टिकोण की अनुशंसा करते हैं तो मैं इसे Yii में कैसे प्राप्त करूं?

आपके समय के लिए धन्यवाद!

पीएस: मैं इस प्रश्न का उद्देश्य संबंध बनाम गैर-संबंधपरक लोगों के बीच एक और अंतहीन चर्चा नहीं करना चाहता हूं। ऐसा कहने के बाद कि मुझे लगता है कि मेरा डेटा मोंगो है लेकिन अगर आपके पास आगे बढ़ने के बारे में कुछ कहना है;)

उत्तर

8

आपको ओपनस्की के बुनियादी ढांचे पर this presentation में रुचि हो सकती है, जहां मोंगोडीबी का उपयोग MySQL के साथ किया जाता है। मोंगो का मुख्य रूप से सीएमएस-प्रकार डेटा के लिए उपयोग किया गया था जहां एक लचीला स्कीमा उपयोगी था, और उन्होंने लेनदेन के लिए MySQL पर भरोसा किया (जैसे ग्राहक आदेश, भुगतान)। यदि आप सिद्धांत पुस्तकालय का उपयोग कर समाप्त करते हैं, तो आप पाएंगे कि ORM (SQL डेटाबेस के लिए) और MongoDB ODM समान API साझा करते हैं, जो प्रयोग प्रक्रिया को आसान बनाना चाहिए।

मैं उपयोगकर्ता डेटा को स्टोर करने के लिए मोंगोडीबी का उपयोग करने से दूर नहीं रहूंगा, हालांकि, यह प्रायः एक रिकॉर्ड है जो एम्बेडेड दस्तावेज़ संग्रहण से लाभ उठा सकता है (उदाहरण के लिए एक ही उपयोगकर्ता दस्तावेज़ में एकाधिक बिलिंग/शिपिंग पते संग्रहीत करना)। यदि कुछ भी हो, तो मोंगो को लचीला होना चाहिए ताकि आप उत्पाद की आवश्यकताओं को विकसित करने के कारण स्कीमा परिवर्तनों के बारे में चिंता किए बिना अपना आवेदन विकसित कर सकें। चूंकि ये आवश्यकताएं अधिक स्पष्ट हो जाती हैं, आप ऐप की प्रदर्शन आवश्यकताओं और आपके द्वारा समाप्त होने वाली डेटाबेस क्वेरी के प्रकारों के आधार पर निर्णय लेने में सक्षम होंगे।

+0

एक अच्छा जवाब। धन्यवाद! – jribeiro

0

एकाधिक डेटाबेस (यदि आपको वास्तव में आवश्यकता है) का उपयोग करने में कोई हानि नहीं है, तो कई बड़ी वेबसाइटें कई डेटाबेस का उपयोग कर रही हैं एक सिर जाओ और अपनी परियोजना शुरू करें।

+0

मिक्सिंग नोएसक्यूएल और रिलेशनल डीबीएस कभी अच्छी बात नहीं है। जब तक एक वास्तविक आवश्यकता नहीं है। आप आमतौर पर नोएसक्यूएल पर बाहर जाते हैं या आप नहीं करते हैं। मेरी कंपनी में हमारी एक बड़ी वेबसाइट है, हम डेटा के लिए MySQL का उपयोग करते हैं, लेकिन हम फ़ाइलों को स्टोर करने के लिए मोंगोडब ग्रिडएफएस का उपयोग करते हैं। केवल मोंगो डीबी ग्रिडएफ के रूप में फ़ाइलों को स्टोर करने के लिए यह सही है। – Flukey