2012-02-12 14 views
9

मैं सोच रहा था कि नोएसQL डेटाबेस (या कम से कम बिगडाटा या कॉलम स्टोर) डेटाबेस तक पहुंचने के लिए कोई मानक भाषा या एपीआई है या नहीं?क्या NoSQL डेटाबेस के लिए कोई उभरती मानक API है?

या क्या आपको प्रत्येक विक्रेता के योगदान के लिए डोमेन विशिष्ट भाषा सीखनी है?

+1

मुझे आशा है कि लोग इस प्रश्न को बंद नहीं करेंगे। मैं वास्तव में जानना चाहता हूं कि कोई एकीकृत एपीआई है या नहीं? यकीन नहीं है कि क्यों विवादित माना जाएगा? –

+0

के रूप में, PHP के लिए पीडीओ की तरह डेटाबेस अज्ञेय अमूर्त परतें? मुझे यकीन नहीं है कि 'एसक्यूएल नहीं' को छोड़कर, नोएसक्यूएल के लिए मानक क्या होगा। – mrlee

+1

मुझे स्टैक ओवरफ़्लो का बिंदु याद आ रहा है - यह प्रश्न विवादास्पद क्यों है, और क्या इस पूछताछ के लिए एक बेहतर मंच है? मैं एक लेख के लिए NoSQL शोध करने की कोशिश कर रहा हूं, और मुझे लगता है कि यह एक बहुत ही प्रासंगिक सवाल है। –

उत्तर

2

रिलेशनल डेटाबेस में SQL भाषा है।

नोएसक्यूएल डेटाबेस विभिन्न प्रकार के हैं: ग्राफ, कॉलम, दस्तावेज़। मुख्य मूल्य, आदि

वे सभी को संभालने के लिए विशिष्ट हैं। शायद एक प्रकार में एक एकीकृत भाषा हो सकती है, लेकिन उनके बीच, यह इतना स्वाभाविक नहीं होगा। तो हाँ आपको प्रत्येक प्रकार के लिए एपीआई का उपयोग/सीखना होगा।

एक और स्तर पर, यदि आप जावा प्रोग्रामिंग भाषा के रूप में उपयोग करते हैं, तो आप वसंत डेटा का उपयोग कर सकते हैं जो उन डेटाबेस तक पहुंचने के लिए पुस्तकालयों का एक सेट प्रस्तावित करता है। मैंने इसका उपयोग नहीं किया लेकिन इसके साथ आप विभिन्न डेटाबेस प्रकारों के बीच एपीआई की तुलना आसानी से कर पाएंगे। Are there any NoSQL standards emerging?

+0

यह समझ में आता है कि ग्राफ डेटाबेस में कॉलमर के समान API नहीं होगा, लेकिन एचबीएएस बनाम कैसंद्रा के बारे में क्या होगा? –

2

2 पहल जिसका लक्ष्य सभी NoSQL डीबी के लिए एक एकीकृत इंटरफेस प्रदान करना है देखा:

तो फिर तुम यह सवाल है कि अच्छी तरह तुम्हारा से संबंधित लगता है। एक UnQL है जो एक बहुत ही एसक्यूएल डीएमएल-जैसे इंटरफ़ेस प्रदान करता है।

दूसरा Apache Thrift है, जो प्रश्नों का वर्णन और कार्यान्वयन करने के लिए एक भाषा-तटस्थ तरीका प्रदान करता है।

3

एक संभावित दिलचस्प एक AppScale जो HBase, Hypertable, MySQL क्लस्टर, कैसेंड्रा, वोल्डेमॉर्ट, MongoDB, MemcacheDB और Redis के लिए एक एकीकृत एपीआई प्रदान करता है। एपीआई को Google ऐप इंजन के लिए Google द्वारा परिभाषित किया गया है और Java, Python और Go के लिए उपलब्ध है।

+0

ओह, और यदि आप जावा में Google App Engine API का उपयोग कर रहे हैं, तो आपको ऑब्जेक्टिफाइड https://code.google.com/p/objectify-appengine/ देखना चाहिए – mjaggard

संबंधित मुद्दे