मैंने जो सबसे बड़ी समस्या देखी है वह मानकीकरण की कमी है। आरडीबीएमएस की दुनिया में, यदि आप एसक्यूएल जानते हैं तो आप किसी भी यादृच्छिक डेटाबेस के साथ बहुत दूर हो सकते हैं। वे मूल रूप से मामूली विविधताओं के साथ इसे लागू करते हैं। मुझे एक मौजूदा आरडीबीएमएस नहीं पता है जो एसक्यूएल नहीं करता है: आप लगभग "आरडीबीएमएस" और "एसक्यूएल" का एक दूसरे से उपयोग कर सकते हैं।
ओओडीबीएमएस के लिए सबसे नज़दीकी चीज शायद ओक्यूएल है, जो पूरी तरह विफल रही है।
कोई डेटाबेस कभी भी इसमें बहुत अधिक लागू नहीं हुआ है। मैंने कुछ साल पहले एक बहुत अच्छा वाणिज्यिक ओओडीबीएमएस का इस्तेमाल किया था, लेकिन (2007 या उससे भी अधिक के रूप में, और यह 8 या 9 संस्करण के प्रमुख संस्करण पर था) यह किसी ऑब्जेक्ट के नाम से पूछताछ का समर्थन भी नहीं करता था। मैनुअल ने कहा कि ओक्यूएल के इस हिस्से को वे अभी तक नहीं मिला था। (मुझे यकीन नहीं है, लेकिन हो सकता है कि आप ऐसा करने के लिए देशी कॉल में उतर सकें।)
अधिकांश ऑब्जेक्ट डेटाबेस जिन्हें मैंने हाल ही में देखा है, ओक्यूएल जैसी क्वेरी भाषा की बजाय मूल भाषा इंटरफेस है। मैंने जिस प्रणाली का उपयोग किया, उदाहरण के लिए, समर्थित (केवल!) पर्ल और वीबी, आईआईआरसी। अपने दर्शकों को केवल कुछ भाषाओं तक सीमित करना (या उन्हें रैपर लिखने के लिए मजबूर करना, जैसा कि हमने किया) दोस्तों को जीतने का तरीका नहीं है।
इस वजह से, कोई प्रतिस्पर्धा नहीं है, और इसलिए कोई आसान बैकअप योजना नहीं है। यदि आप एमएस-एसक्यूएल में अपना डेटा डालते हैं और माइक्रोसॉफ्ट ने इसे समर्थन देना बंद कर दिया है, तो आप शायद अपने डेटा को पोस्टग्रेज़ में डंप कर सकते हैं और बिना किसी परेशानी के अपने प्रश्नों को पोर्ट कर सकते हैं। (यदि आपके पास बहुत सारे प्रश्न हैं, तो मुझे बहुत काम हो सकता है, लेकिन मुझे संदेह नहीं है कि आप इसे कर सकते हैं। यह दर्द है, लेकिन तकनीकी रूप से चुनौतीपूर्ण नहीं है।) या ओरेकल, या MySQL, या कई अन्य, दोनों वाणिज्यिक और मुफ़्त।
ओओडीबीएमएस के साथ ऐसी कोई चीज़ मौजूद नहीं है: यदि आप जिस व्यक्ति का उपयोग कर रहे हैं वह पेट-अप हो जाता है, या वे इसे उस दिशा में ले जाते हैं जो आपके लिए उपयोगी नहीं है, या आपको लगता है कि इसमें आपकी एक महत्वपूर्ण विशेषता नहीं है, तो आप कर सकते हैं अपने डेटा को एक प्रतिस्पर्धी ओओडीबीएमएस में डंप न करें और अपने प्रश्नों को बंद करें। इसके बजाए, आप कोर लाइब्रेरी को बदलने और बड़े पैमाने पर आर्किटेक्चर परिवर्तन करने के बारे में बात कर रहे हैं। तो वास्तव में, आप एक वाणिज्यिक ओओडीबीएमएस तक सीमित हैं, जिन्हें आप वास्तव में भरोसा करते हैं (क्या आप यहां तक कि एक नाम भी दे सकते हैं?), या ओपन-सोर्स ओओडीबीएमएस जिन्हें आप अपनी टीम पर भरोसा करते हैं, जब चीजें खराब होती हैं।
अगर यह एफयूडी की तरह लगता है, क्षमा करें, तो मुझे इसका इरादा नहीं था। लेकिन मैं वहां गया हूं, और एक परियोजना प्रबंधन परिप्रेक्ष्य से मैं वापस जाने में संकोच करता हूं, भले ही प्रोग्रामिंग वातावरण अद्भुत हो। इसके बारे में सोचने का एक और तरीका यह है कि: यह कितना अच्छा विचार है कि यह कितना लोकप्रिय कार्यात्मक प्रोग्रामिंग है। ओओडीबीएमएस इस तरह हैं, लेकिन बदतर, क्योंकि यह सिर्फ आपका कोड नहीं है, बल्कि आपका कोड और आपका डेटा है। मैं खुशी से आज Erlang में एक प्रमुख परियोजना शुरू कर दूंगा, लेकिन मैं अभी भी एक ओओडीबीएमएस का उपयोग करने में संकोच करता हूं।
ओओडीबीएमएस विक्रेता: इसे बदलने के लिए, आपको make it easy to leave you for your competitors की आवश्यकता है। आप ओक्यूएल खोद सकते हैं और वास्तव में इसे कार्यान्वित कर सकते हैं, या ओडीबीसी, या जो कुछ भी एपीआई स्तर पर कर सकते हैं। यहां तक कि एक मानक डंप प्रारूप (JSON का उपयोग कर?), और कई ओओडीबीएमएस के लिए आयात/निर्यात के लिए उपकरण, एक महान शुरुआत होगी।
"यदि यह तोड़ नहीं है तो इसे बदलना नहीं है" इतना बेवकूफ है ... कुछ बेहतर क्यों बना रहा है, या सॉफ्टवेयर विकसित करना एक बुरी चीज है। जब मैंने इसे बदल दिया तो मेरा आखिरी कंप्यूटर तोड़ नहीं था, बस धीमा था !!!!एक डेवलपर के रूप में मेरा लक्ष्य बेहतर, अधिक कुशल समाधान करने का प्रयास करना है। – billy