2012-02-06 29 views
35

मैं सोच रहा था कि रिलेशनल डेटाबेस पर ट्रिपल स्टोर्स का उपयोग करने के क्या फायदे हैं?ट्रिपल स्टोर्स बनाम रिलेशनल डेटाबेस

+1

वे बहुत अलग चीजें हैं; क्या आप अधिक विशिष्ट हो सकते हैं? –

+0

यह एक सेब पर एक स्क्रूड्राइवर का उपयोग करने के फायदों के बारे में पूछना पसंद है। दोनों उपयोगी चीजें, लेकिन शायद ही कभी अदला-बदली। –

+0

@ माइकशेरिल 'कैट्रैकल' फिर समझाते हुए _why_ क्या मामला एक उत्कृष्ट उत्तर का निर्माण है? मैं एक के लिए, निश्चित रूप से नहीं जानता। और ट्रिपल रिलेशनल ओवरलैर्ड्स का स्वागत करते हैं। – Benjohn

उत्तर

43

एक कंपनी है कि बड़े पैमाने पर RDF Triplestores व्यावसायिक रूप से उपयोग करता है के सीटीओ के दृष्टिकोण:

स्कीमा लचीलापन - यह एक RDF दुकान को लाइव करने के लिए एक स्कीमा परिवर्तन के बराबर करने के लिए संभव है, और किसी भी डाउनटाइम बिना, या नया स्वरूप - यह मुफ्त लंच नहीं है, आपको सावधान रहना होगा कि आपका सॉफ़्टवेयर कैसे काम करता है, लेकिन यह करना एक बहुत आसान काम है।

अधिक आधुनिक - आरडीएफ स्टोर आमतौर पर HTTP पर पूछे जाते हैं, उन्हें सर्विस आर्किटेक्चर में हैकी ब्रिजिंग समाधान या प्रदर्शन दंड के बिना फिट करना बहुत आसान होता है। साथ ही वे विशिष्ट SQL डेटाबेस से बेहतर अंतरराष्ट्रीय सामग्री को संभालते हैं - उदा। आप अलग-अलग भाषाओं में कई मान रख सकते हैं।

मानकीकरण - आरडीएफ और एसपीएआरक्यूएल का उपयोग करके कार्यान्वयन के मानकीकरण का स्तर एसक्यूएल से काफी अधिक है। एक ट्रिपलस्टोर को दूसरे के लिए स्वैप करना संभव है, हालांकि आपको सावधान रहना होगा कि आप मानकों के बाहर कदम नहीं उठा रहे हैं। दुकानों के बीच डेटा स्थानांतरित करना आसान है, क्योंकि वे सभी एक ही भाषा बोलते हैं।

अभिव्यक्ति - एसक्यूएल की तुलना में आरडीएफ में जटिल डेटा मॉडल करना बहुत आसान है, और क्वेरी भाषा बाएं जॉइन (जिसे SPARQL में वैकल्पिक कहा जाता है) जैसी चीजों को करना आसान बनाता है। इसके विपरीत, यदि आप डेटा बहुत सारणीबद्ध है, तो एसक्यूएल बहुत आसान है।

प्रोवेनेंस - SPARQL आपको ट्रैक करने देता है कि प्रत्येक टुकड़ा कहां से आया था, और आप इसके बारे में मेटाडेटा स्टोर कर सकते हैं, जिससे आप परिष्कृत प्रश्नों को आसानी से कर सकते हैं, केवल कुछ स्रोतों से डेटा खाते में ले सकते हैं, या एक निश्चित ट्रस्ट स्तर पर, कुछ दिनांक सीमा आदि से

हालांकि डाउनसाइड्स हैं। एसक्यूएल डेटाबेस आम तौर पर अधिक परिपक्व होते हैं, और सामान्य आरडीएफ डेटाबेस की तुलना में अधिक सुविधाएं होती हैं। लेनदेन जैसी चीजें अक्सर अधिक कच्ची, या अस्तित्व में नहीं होती हैं। इसके अलावा, आरडीएफ बनाम एसक्यूएल में संग्रहीत प्रति यूनिट की जानकारी काफी अधिक है। सामान्यीकृत करना मुश्किल है, लेकिन यदि आपके पास बहुत अधिक डेटा है तो यह महत्वपूर्ण हो सकता है - हालांकि कम से कम हमारे मामले में यह लचीलापन और शक्ति को आर्थिक रूप से एक समग्र लाभ है।

+2

+1 ट्रिपल स्टोर (और नुकसान) का उपयोग करने के फायदे के लिए wrt। मैं एक लाभ के रूप में तर्क शामिल करना चाहता हूं, हालांकि यह एक सर्वव्यापी विशेषता नहीं है, इसलिए शायद यह आधा लाभ =) – Michael

7

दोनों टिप्पणीकर्ता सही हैं, खासकर जब से Semantic Web डेटाबेस नहीं है, यह उससे थोड़ा अधिक सामान्य है।

लेकिन मुझे लगता है कि आप सामान्य रूप से सेमेन्टिक वेब की बजाय ट्रिपल स्टोर का मतलब हो सकते हैं, क्योंकि ट्रिपल स्टोर वी। रिलेशनल डेटाबेस कुछ हद तक अधिक सार्थक तुलना है। मैं अपने बाकी जवाब का जवाब देकर यह बताकर बताऊंगा कि मैं डेटाबेस सिस्टम के संबंध में एक विशेषज्ञ नहीं हूं, लेकिन मेरे पास ट्रिपल स्टोर्स के बारे में थोड़ा सा ज्ञान है।

ट्रिपल (या ट्रैक्टर) स्टोर अर्थात् वेब, विशेष रूप से आरडीएफ पर डेटा के लिए मूल रूप से डेटाबेस हैं। यही वह जगह है जहां ट्रिपल स्टोर्स के बीच समानता & संबंधपरक डेटाबेस समाप्त होती है। दोनों स्टोर डेटा, दोनों में क्वेरी भाषाएं हैं, दोनों का उपयोग शीर्ष पर अनुप्रयोग बनाने के लिए किया जा सकता है; तो मुझे लगता है कि अगर आप अपनी आंखों को झुकाते हैं, तो वे बहुत समान हैं। लेकिन प्रत्येक स्टोर के डेटा का प्रकार काफी अलग है, इसलिए दो तकनीकें विभिन्न उपयोग मामलों और डेटा संरचनाओं के लिए अनुकूलित होती हैं, इसलिए वे वास्तव में विनिमय नहीं कर सकते हैं।

बहुत से लोगों ने एक संबंधपरक डेटाबेस के शीर्ष पर दुनिया के एक तिहाई दृश्य को ओवरले करने में काम किया है, और यह काम कर सकता है, और ट्रिपल को संग्रहित करने और पुनर्प्राप्त करने के लिए समर्पित प्रणाली से भी धीमा हो जाएगा। समस्याओं का एक हिस्सा यह है कि SPARQL, ट्रिपल स्टोर्स द्वारा उपयोग की जाने वाली मानक क्वेरी भाषा के लिए बहुत से आत्म जुड़ने की आवश्यकता हो सकती है, कुछ रिलेशनल डेटाबेस को अनुकूलित नहीं किया जाता है। यदि आप SP2B जैसे बेंचमार्क देखते हैं, तो आप देख सकते हैं कि ओरेकल, जो इसके संबंध प्रणाली पर SPARQL समर्थन को ओवरले करता है, आरडीएफ का अधिक समर्थन करने वाले सिस्टम की तुलना में बीच में या पैक के पीछे पैक करता है।

बेशक, आरडीएफ सिस्टम शायद ओरेकल द्वारा कुचल जाएंगे यदि वे संबंधपरक डेटा पर एसक्यूएल प्रश्न कर रहे थे। लेकिन यह एक तरह का मुद्दा है, आप उस उपकरण को चुनते हैं जो उस एप्लिकेशन के लिए उपयुक्त है जिसे आप बनाना चाहते हैं।

तो यदि आप एक अर्थपूर्ण वेब एप्लिकेशन बनाने के बारे में सोच रहे हैं, या बस क्षेत्र में कुछ परिचितता प्राप्त करने की कोशिश कर रहे हैं, तो मैं अंत में एक समर्पित ट्रिपल स्टोर के साथ जाने की सिफारिश करता हूं।

मैं तर्क में नहीं पहुंचूंगा और यह ट्रिपल स्टोर्स में क्वेरी का जवाब कैसे देता है, क्योंकि यह अभी तक एक और चर्चा है, लेकिन यह तर्कसंगत प्रणालियों और ट्रिपल स्टोर्स के बीच एक और महत्वपूर्ण अंतर है जो तर्क कर रहा है।

7

कुछ triplestores (Virtuoso, जेना एसडीबी) संबंधपरक डेटाबेस पर आधारित हैं और बस एक आरडीएफ/SPARQL इंटरफ़ेस प्रदान करते हैं। इसलिए मामूली सवाल को दोबारा शुरू करने के लिए, त्रिभुज के रूप में ग्राउंड अप से बने ट्रिपलस्टोर हैं जो कि नहीं हैं - @ स्टीव-हैरिस निश्चित रूप से इसका उत्तर जानते हैं;) लेकिन मैं एक हां दांव लगाता हूं।

दूसरा, त्रिभुजों के पास क्या विशेषताएं हैं जो आरडीबीएमएस नहीं करते हैं। सरल उत्तर SPARQL, RDF, OWL इत्यादि के लिए समर्थन है (यानी अर्थात् वेब प्रौद्योगिकी ढेर) और इसे एक उचित लड़ाई बनाने के लिए, SPARQL 1.1 के आधार पर SPARQL के मान को परिभाषित करना बेहतर है (इसमें 1.0 से अधिक सुविधाएं हैं) । यह फेडरेशन (इतनी शांत), संपत्ति पथ अभिव्यक्तियों और प्रवर्तन शासनों के लिए समर्थन प्रोटोकॉल के मानकों के सेट के साथ समर्थन प्रदान करता है, ग्राफ प्रबंधन प्रोटोकॉल (कि SPARQL 1.0 में और गंभीर रूप से कमी नहीं थी)। इसके अलावा @ स्टीव-हैरिस बताते हैं कि लेनदेन मानक (कीड़े के कर सकते हैं) का हिस्सा नहीं हैं हालांकि कई विक्रेता लेन-देन के लिए गैर-मानकीकृत तंत्र प्रदान करते हैं (वर्चुसो जेडबीसी और हाइबरनेट अनुपालन कनेक्शन पूलिंग और प्रबंधन को हाइबरनेट की सभी लेनदेन संबंधी सुविधाओं के साथ समर्थन करता है)

मेरे दिमाग में बड़ी कमी यह है कि कई triplestores SPARQL 1.1 का समर्थन नहीं करते हैं (क्योंकि यह अभी भी सिफारिश में नहीं है) और यही वह जगह है जहां वास्तविक लाभ झूठ बोलते हैं।

यह कहकर कि, मैं त्रिभुज और प्लेटफार्मों के साथ आरडीबीएमएस को प्रतिस्थापित करने का एक वकील रहा हूं, जो मैं पूरी तरह से ट्रिपलस्टोरों से चलाता हूं (मेरी आखिरी भूमिका में वोक्सवैगन इसका एक उदाहरण था), आरडीबीएमएस की आवश्यकता को खत्म कर देता है। एक अतिरिक्त लाभ यह है कि आरडीएफ मैपिंग का ऑब्जेक्ट अधिक लचीला है और परंपरागत ओआरएम (जिसे गोल छेद में स्क्वायर पेग डालने के रूप में भी जाना जाता है) से अधिक विकल्प और लचीलापन प्रदान करता है।

+1

SPARQL 1 है।1 अब सिफारिश में है, AFAIK। –

0

इसके अलावा आप अभी भी डेटाबेस का उपयोग कर सकते हैं लेकिन आरडीएफ का उपयोग डेटा एक्सचेंज प्रारूप के रूप में करते हैं जो बहुत लचीला है।

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