BigQuery और BigTable में क्या अंतर है? [बन्द है]


85

क्या कोई कारण है कि कोई BigQuery के बजाय BigTable का उपयोग करेगा? दोनों बाद की पेशकश के साथ पढ़ें और लिखें संचालन का समर्थन करते हैं और साथ ही 'क्वेरी' संचालन को भी उन्नत करते हैं।

मुझे एक संबद्ध नेटवर्क विकसित करने की आवश्यकता है (इस प्रकार मुझे क्लिक और 'बिक्री' को ट्रैक करने की आवश्यकता है) इसलिए मैं इस अंतर से काफी भ्रमित हूं क्योंकि bigQuery एक बेहतर एपीआई के साथ सिर्फ बड़ा होना प्रतीत होता है।


मैं कहूंगा कि बिगटेबल कम स्तर और कम प्रबंधित क्लाउड डेटास्टोर जैसे लोगों के लिए अधिक है जिन्हें बेहतर प्रदर्शन की आवश्यकता है।
dyeray

1
यह पिछले SO थ्रेड भी मदद कर सकता है: stackoverflow.com/questions/34437572/…
इलियट ब्रोडार्ड

@dyeray हाँ मुझे पता है कि लेकिन क्या किसी के लिए बिगटैबल और बिग विकी दोनों में एक ही डेटा बनाए रखने का कोई कारण है, बजाय केवल बिगविक के?
कोई हैट

BigTable सिंगल रो, या छोटी रेंज लुक्स में बहुत अच्छी है। BigQuery बड़ी तस्वीर में बहुत अच्छा है। यदि आप कुशल ड्रिलडाउन के साथ एनालिटिक्स चाहते हैं, तो आप बड़े पैमाने पर एनालिटिक्स के लिए बिगविक का उपयोग करते हैं, और छोटे रेंज में एनालिटिक्स के लिए बिगटेबल।
सोलोमन डस्किस

सिस्टम गुण Google BigQuery बनाम Google क्लाउड Bigtable बनाम Google क्लाउड डेटास्टोर की तुलना करते हैं। ! छवि (अस्वीकरण! db-engines.com से कॉपी किया गया)
Le Khiem

जवाबों:


110

अंतर मूल रूप से यह है:

BigQuery डेटासेट के लिए एक क्वेरी इंजन है जो बहुत अधिक नहीं बदलता है, या जोड़कर नहीं बदलता है। जब आपके प्रश्नों को "टेबल स्कैन" या संपूर्ण डेटाबेस में देखने की आवश्यकता होती है, तो यह एक बढ़िया विकल्प है। सोचो, औसत, मायने रखता है, समूह। जब आप बड़ी मात्रा में डेटा एकत्र कर चुके हों, तो BigQuery का उपयोग करें और इसके बारे में प्रश्न पूछने की आवश्यकता है।

बिगटेबल एक डेटाबेस है। यह एक बड़े, स्केलेबल अनुप्रयोग के लिए नींव बनाने के लिए डिज़ाइन किया गया है। बिगटेबल का उपयोग करें जब आप किसी भी तरह का ऐप बना रहे हों, जिसमें डेटा पढ़ना और लिखना आवश्यक हो, और पैमाना एक संभावित मुद्दा हो।


2
दूसरे पैराग्राफ में - आपका मतलब है Use BigTable: ओ)
मिखाइल बेरिलेंट


4
Google द्वारा यहां एक दुर्भाग्यपूर्ण नामकरण सम्मेलन में से कुछ। जब मैं आमतौर पर एसक्यूएल के बारे में सोचता हूं - मैं टेबुलर डेटा संरचना के बारे में सोचता हूं, जबकि जब मैं क्वेरी के बारे में सोचता हूं तो मैं कुंजी-मूल्य या डेटाबेस के प्रकार को देखता हूं। इस स्थिति में, BigTable No-SQL है जबकि BigQuery Sql डेटाबेस।
मकसूद

@Michael Manoochehri cloud.google.com/bigquery/... : नीचे पढ़ने उद्धृत करें
gstackoverflow

आप उपयोगकर्ताओं (सेवा खातों सहित) या समूहों के साथ एक स्थायी बाहरी तालिका तक पहुंच साझा कर सकते हैं। बाहरी तालिका को क्वेरी करने के लिए, आपके उपयोगकर्ताओं या समूहों को (कम से कम) दिए जाने की आवश्यकता होती है: डेटासेट तक पहुँचने के लिए या उससे अधिक डेटासेट स्तर पर bigquery.dataViewer भूमिका जो बाहरी तालिका समाहित करती है , परियोजना स्तर पर bigquery.user भूमिका या क्वेरी नौकरियों को चलाने के लिए उच्चतर। क्लाउड बिगिटेबल में bigtable.reader भूमिका जो मेटाडेटा और तालिकाओं तक केवल पढ़ने के लिए पहुँच प्रदान करती है
gstackoverflow

87

Google क्लाउड - GCP डेटाबेस विकल्प निर्णय फ़्लोचार्ट

यह विभिन्न डेटा स्टोरों के बीच निर्णय लेने में थोड़ी मदद कर सकता है जो Google क्लाउड प्रदान करता है (अस्वीकरण (Google क्लाउड पेज से कॉपी किया गया))

यदि आपकी आवश्यकता एक जीवित डेटाबेस है, तो बिगटेबल वह है जो आपको चाहिए ( हालांकि वास्तव में एक ओएलटीपी सिस्टम नहीं है)। यदि यह एक विश्लेषणात्मक प्रकार का उद्देश्य है, तो BigQuery को आपकी आवश्यकता है!

OLTP बनाम OLAP के बारे में सोचो ; या यदि आप कैसंड्रा बनाम हाडोप से परिचित हैं, तो बिगटेबल लगभग कैसेंड्रा के बराबर है, बिगवाइट लगभग हाडोप (सहमत के बराबर है, यह उचित तुलना नहीं है, लेकिन आपको यह विचार मिलता है)

https://cloud.google.com/images/storage-options/flowchart.svg

ध्यान दें

कृपया ध्यान रखें कि बिगटेबल एक रिलेशनल डेटाबेस नहीं है और यह एसक्यूएल प्रश्नों या JOINएस का समर्थन नहीं करता है , न ही यह बहु-पंक्ति लेनदेन का समर्थन करता है। साथ ही, यह छोटी मात्रा में डेटा के लिए एक अच्छा समाधान नहीं है। यदि आप RDBMS OLTP चाहते हैं, तो आपको CloudSQL (mysql / postgres) या स्पैनर को देखना पड़ सकता है।

लागत परिप्रेक्ष्य

https://stackoverflow.com/a/34845073/6785908 । यहां प्रासंगिक भागों का हवाला देते हुए।

कुल लागत यह बताती है कि आप डेटा को कितनी बार 'क्वेरी' करेंगे। यदि यह एक बैकअप है और आप अक्सर घटनाओं को फिर से खेलना नहीं करते हैं, तो यह सस्ता होगा। हालाँकि, यदि आपको इसे एक बार प्रतिदिन करने की आवश्यकता है, तो आप बहुत आसानी से स्कैन किए गए 5 $ / टीबी को ट्रिगर करना शुरू कर देंगे। हमें यह भी आश्चर्य हुआ कि सस्ते आवेषण और भंडारण कैसे थे, लेकिन यह एक टो है क्योंकि Google आपसे कुछ समय में महंगे प्रश्नों को चलाने की अपेक्षा करता है। आपको हालांकि कुछ चीजों के लिए डिज़ाइन करना होगा। उदाहरण के लिए AFAIK स्ट्रीमिंग आवेषण की तालिका में लिखे जाने की कोई गारंटी नहीं है और आपको यह देखने के लिए सूची की पूंछ पर अक्सर चुनाव करना होगा कि क्या यह वास्तव में लिखा गया था। समय सीमा टेबल डेकोरेटर के साथ कुशलता से किया जा सकता है, हालांकि (संपूर्ण डेटासेट को स्कैन करने के लिए भुगतान नहीं)।

यदि आपको आदेश की परवाह नहीं है, तो आप मुफ्त में एक तालिका भी सूचीबद्ध कर सकते हैं। फिर 'क्वेरी' चलाने की आवश्यकता नहीं है।

संपादित करें 1

क्लाउड स्पैनर अपेक्षाकृत युवा है, लेकिन शक्तिशाली और आशाजनक है (और अपमानजनक रूप से महंगा भी है)। कम से कम, Google मार्केटिंग का दावा है कि यह सुविधाएँ दोनों दुनिया में सबसे अच्छी हैं (पारंपरिक RDBMS और noSQL)

यहां छवि विवरण दर्ज करें


आप उपयोगकर्ताओं (सेवा खातों सहित) या समूहों के साथ एक स्थायी बाहरी तालिका तक पहुंच साझा कर सकते हैं। बाहरी तालिका को क्वेरी करने के लिए, आपके उपयोगकर्ताओं या समूहों को (कम से कम) दिए जाने की आवश्यकता होती है: डेटासेट तक पहुँचने के लिए या उससे अधिक डेटासेट स्तर पर bigquery.dataViewer भूमिका जो बाहरी तालिका समाहित करती है, परियोजना स्तर पर bigquery.user भूमिका या क्वेरी नौकरियों को चलाने के लिए उच्चतर। क्लाउड बिगिटेबल में bigtable.reader भूमिका जो मेटाडेटा और तालिकाओं तक केवल पढ़ने के लिए पहुँच प्रदान करती है
gstackoverflow

मैंने Cloud.google.com/bigquery/… से ऊपर का उद्धरण लिया । Bigtable तक पहुंचने के लिए मुझे एक अनुमति की आवश्यकता है जिसमें शब्द bigquery शामिल है ?
gstackoverflow

-3

BigQuery और क्लाउड Bigtable समान नहीं हैं। Bigtable एक Hadoop आधारित NoSQL डेटाबेस है जबकि BigQuery एक SQL आधारित डेटावेयरहाउस है। उनके विशिष्ट उपयोग परिदृश्य हैं।

बहुत ही कम और सरल शब्दों में;

  • यदि आपको ACID लेनदेन के लिए समर्थन की आवश्यकता नहीं है या यदि आपका डेटा अत्यधिक संरचित नहीं है, तो क्लाउड बिगटेबल पर विचार करें।
  • यदि आपको ऑनलाइन एनालिटिकल प्रोसेसिंग (OLAP) सिस्टम में इंटरैक्टिव क्वेरी की आवश्यकता है, तो BigQuery पर विचार करें।

5
Bigtable एक Hadoop- आधारित NoSQL डेटाबेस नहीं है, यह वास्तव में एक विपरीत है - Bigtable श्वेत पत्र HBase (Hadoop- आधारित NoSQL) पर आधारित था। इस वजह से वे हालांकि समान (समान?) एपीआई साझा करते हैं।
इगोर ड्वोरज़ाक
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.