आपका मतलब है, क्या कोई डेटाबेस है जो मूल रूप से HTTP प्रोटोकॉल का समर्थन करता है? खैर, कुछ हैं। आपके पास MonetDB/XQuery (http://monetdb.cwi.nl/XQuery/QuickTour/ एक्सआरपीसी/ ), और एक NoSQL डेटाबेस जैसे CouchDB (http://couchdb.apache.org/ ) आपके पास यह अधिक पारंपरिक rdbms-es जैसे Oracle में भी है (Oracle एप्लिकेशन एक्सप्रेस एक अंतर्निहित HTTP सर्वर पर निर्भर करता है, उर्फ APEX सेवा http://www.oracle.com/technology/products/database/application_express/index.html ) और MS SQL (सेवा स्कीमा ऑब्जेक्ट जैसे http://msdn.microsoft. com/en-us/library/ms190332.aspx और XML दृश्य, देखें http://msdn.microsoft.com/en- us/library/aa286527.aspx )
लेकिन वास्तव में - आपको सवाल करना चाहिए कि क्या यह वास्तव में उपयोगी है।
मेरा मतलब है, हमेशा एक घटक होने वाला है जो HTTP को संभालता है। आपको लग सकता है कि वेबसर्वर/php परत को बाहर निकालना अच्छा है क्योंकि आपको लगता है कि यह अतिरिक्त है, और ऐप और डेटाबेस के बीच में बैठता है। लेकिन वास्तव में, जिन समाधानों का मैंने अभी उल्लेख किया है, वे अलग नहीं हैं - उन्हें सॉफ्टवेयर के एक ही टुकड़े के ऊपर टैग किया गया है, लेकिन डेटा को अभी भी उस अतिरिक्त परत के माध्यम से प्रवाहित करना है।
और आप सोच सकते हैं कि क्या यह वास्तव में फायदेमंद है, यह सब एक टुकड़े में है:एक अलग वेबसर्वर के साथ, आप डेटाबेस सर्वर से स्वतंत्र रूप से वेबसर्वर परत को स्केल कर सकते हैं। या आप वेबसर्वर परत से स्वतंत्र रूप से डेटाबेस परत को स्केल कर सकते हैं। यदि यह सब सॉफ्टवेयर का एक टुकड़ा है, तो आप नहीं कर सकते।
मूल रूप से, डेटाबेस में http सर्वर का निर्माण करके, आप डीबी सर्वर को एक ऐसे कार्य के साथ बोझ कर रहे हैं जो अन्य डीबी कार्यों के लिए उपयोग किए जा सकने वाले संसाधनों का उपभोग करता है। अब एक सामान्य मामले के बारे में सोचें, जहां आपने अपने डीबी के प्रति-प्रोसेसर लाइसेंस के लिए भुगतान किया था। क्या आप वास्तव में उस लाइसेंस को डीबी हैंडल HTTP अनुरोधों पर खर्च करना चाहेंगे, जब आप अपाचे जैसे मुफ्त वेबसर्वर के साथ ऐसा कर सकते थे? भले ही आप एक मुफ्त सॉफ्ट डेटाबेस उत्पाद का उपयोग कर रहे हों, कई मामलों में डेटाबेस सर्वर एक अड़चन है। क्या आप वास्तव में इसमें HTTP सर्वर बनाकर और अधिक कार्य करना चाहते हैं?
एक और कारण है कि मुझे लगता है कि यह एक अच्छा विचार नहीं है। आपने एक्सएमएल को डेटा एक्सचेंज प्रारूप के रूप में उल्लेख किया है। गुडी। लेकिन क्या होगा अगर आप JSON चाहते हैं? या वाईएएमएल? या शायद सादा सीएसवी? PHP, ASP.NET, Perl और यहां तक कि Java जैसी वेबसर्वर स्क्रिप्टिंग भाषाओं में इन चीजों से निपटने के लिए बहुत अच्छी लाइब्रेरी हैं। विशिष्ट डेटाबेस संग्रहीत कार्यविधि भाषाएँ नहीं करती हैं। बेशक, आप इसे एक कदम आगे ले जा सकते हैं और कह सकते हैं, नरक, डेटाबेस में जावा या .NET का निर्माण क्यों न करें, लेकिन यह समस्या को फिर से उल्टा कर रहा है - डेटाबेस का कार्य डेटा को संग्रहीत और पुनर्प्राप्त करना है, और अच्छा लेना है डेटा की देखभाल जबकि यह संग्रहीत है। डेटा को किसी एप्लिकेशन में प्रस्तुत करने के लिए प्रोसेस करना उसका हिस्सा नहीं है। यदि आप इसे डीबी की नौकरी का हिस्सा बनाते हैं, तो आप पूरे सिस्टम के लचीलेपन और मापनीयता का एक महत्वपूर्ण स्रोत छीन लेते हैं। आप महसूस कर सकते हैं कि यह कम ओवरहेड है क्योंकि सोचने के लिए एक घटक कम (यानी वेबसर्वर/स्क्रिप्टिंग भाषा) है, लेकिन वास्तव में, यह अभी भी वहां है, यह सिर्फ आपके डेटाबेस सॉफ़्टवेयर के अंदर छुपाता है, और उन संसाधनों को बेकार करता है जिनका उपयोग किया जा सकता था डेटा संग्रहीत करना और पुनर्प्राप्त करना, क्वेरीज़ को पार्स करना आदि।