paint-brush
स्नोफ्लेक का विस्तार करने के लिए बाहरी तालिकाओं के रूप में मिनियो का उपयोग कैसे करेंद्वारा@minio
8,190 रीडिंग
8,190 रीडिंग

स्नोफ्लेक का विस्तार करने के लिए बाहरी तालिकाओं के रूप में मिनियो का उपयोग कैसे करें

द्वारा MinIO6m2023/08/03
Read on Terminal Reader

बहुत लंबा; पढ़ने के लिए

मिनिआईओ एक उच्च-प्रदर्शन, क्लाउड नेटिव ऑब्जेक्ट स्टोर है। यह कुबेरनेट्स (अप-स्ट्रीम, ईकेएस, एकेएस, जीकेई, आदि) के सभी फ्लेवर के साथ-साथ सार्वजनिक क्लाउड वीएम, वीएमवेयर इत्यादि जैसी वर्चुअल मशीनों और बेयर मेटल हार्डवेयर पर काम करेगा। इस वजह से, मिनिओ स्नोफ्लेक ग्राहकों के लिए वैश्विक डेटास्टोर बन सकता है - जहां भी उनका डेटा बैठता है।
featured image - स्नोफ्लेक का विस्तार करने के लिए बाहरी तालिकाओं के रूप में मिनियो का उपयोग कैसे करें
MinIO HackerNoon profile picture
0-item
1-item
2-item

स्नोफ्लेक अब क्लाउड डेटा वेयरहाउस प्लेटफ़ॉर्म के लिए वास्तविक मानक है। इसे पाइपलाइन, ईटीएल, एनालिटिक्स और गवर्नेंस से विभिन्न प्रकार के डेटा कार्यों का समर्थन करने के लिए तैयार किया गया है। परंपरागत रूप से, किसी उद्यम को स्नोफ्लेक क्षमताओं का लाभ उठाने के लिए सभी डेटा को स्नोफ्लेक में ले जाने की आवश्यकता होती है।


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


इसका वास्तविक प्रभाव, स्नोफ्लेक परिनियोजन के अर्थशास्त्र पर, लेकिन एनालिटिक्स और डेटा विज्ञान के लिए स्नोफ्लेक प्लेटफ़ॉर्म पर उपलब्ध डेटा की मात्रा पर भी पड़ता है।


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


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


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


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


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


जैसा कि मैंने पहले लिखा है, सिंगल क्लाउड निर्भरता खराब आर्किटेक्चर साबित हुई है। मिनिओ, हर जगह उपलब्ध होने और निजी, सार्वजनिक और किनारे के बादलों के बीच दोहराने की क्षमता के साथ, मल्टी-क्लाउड डेटा उपलब्धता के लिए एकमात्र सही समाधान प्रदान करता है।

उपयोग में सरल

तो, अंतिम उपयोगकर्ता के लिए यह कितना आसान है? कल्पना कीजिए कि आपके पास MiniIO में 'बकेट1' नामक एक बाल्टी है। आप इसे सेट अप कर सकते हैं ताकि आप इस पर कोई भी स्नोएसक्यूएल कमांड चला सकें जैसे कि यह सिर्फ एक और टेबल है।


उदाहरण के लिए: Bucket1 से * चुनें;



स्नोफ्लेक की अधिकांश चीज़ों की तरह, मिनिओ पर संग्रहीत आपके डेटा से कनेक्ट करना भी अपेक्षाकृत सरल है।


आरंभ करने के लिए आपको यहां क्या चाहिए:

स्नोफ्लेक की स्थापना

आपके स्नोफ्लेक वातावरण के लिए बाहरी टेबल समर्थन को चालू करने की आवश्यकता है। यदि आपको 'अमान्य यूआरएल उपसर्ग मिला: ' s3compat://snowflake/ ' जैसी त्रुटियां मिलती हैं, तो संभवतः इसका मतलब है कि यह सक्षम नहीं है। इसे सक्षम कराने के लिए कृपया अपने स्नोफ्लेक प्रतिनिधि से संपर्क करें।

मिनियो की स्थापना

स्नोफ्लेक के साथ काम करने के लिए मिनिओ सेटअप पर केवल कुछ आवश्यकताएँ हैं।


  1. DNS स्टाइल एक्सेस की अनुमति देने के लिए MiniIO को स्थापित करना होगा और बकेट को सार्वजनिक रूप से उपलब्ध कराना होगा।
  2. वर्तमान में, क्षेत्र को NULL या स्नोफ्लेक उदाहरण के क्षेत्र के समान सेट करना होगा (उदाहरण के लिए 'us-west-2')। आपको स्नोफ्लेक क्वेरी से एक त्रुटि संदेश मिलेगा ताकि आप जान सकें कि यह किस क्षेत्र की अपेक्षा कर रहा है।


नीचे दिए गए उदाहरण में, बकेट "स्नोफ्लेक" में 4 ऑब्जेक्ट हैं और फ़ोल्डर/उप-उपसर्ग "sn1" में एक अन्य ऑब्जेक्ट है। स्नोफ्लेक इन सभी वस्तुओं को ले आएगा।


इसे स्नोफ्लेक के साथ एकीकृत करने के लिए, यदि मिनिओ सर्वर https://play.min.io पर है, तो बकेट https://snowflake.play.min.io पर पहुंच योग्य होना चाहिए।


नमूना फ़ाइलें https://docs.snowflake.com/en/user-guide/getting-started-tutorial-prerequisites.html#sample-data-files-for-loading पर उपलब्ध हैं




मिनिओ बकेट को स्नोफ्लेक के साथ दो तरीकों से एकीकृत किया जा सकता है। पहला "स्टेजिंग एरिया" के रूप में है और दूसरा बाहरी टेबल के रूप में है। आइए दोनों पर नजर डालें

मंचन क्षेत्र तक पहुंच

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


परंपरागत रूप से, स्नोफ्लेक के लिए ये मंचन क्षेत्र स्नोफ्लेक में ही थे, इसलिए यह प्रवाह था:


डेटा लेक (ऑन-प्रिमाइसेस, सार्वजनिक क्लाउड, आदि) -> स्नोफ्लेक स्टेजिंग -> स्नोफ्लेक आंतरिक तालिका


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


यह निम्नलिखित कार्य करता है


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


नया प्रवाह होगा: मिनियो में डेटा (ऑन-प्रिमाइसेस, सार्वजनिक क्लाउड, आदि) -> स्नोफ्लेक आंतरिक तालिका


निम्नलिखित उदाहरण स्नोफ्लेक कंसोल में दिखाए गए हैं, लेकिन इसे स्नोफ्लेक सीएलआई के माध्यम से चलाया जा सकता है।

Play.min.io के लिए, उपयोग करें
AWS_KEY_ID='Q3AM3UQ867SPQQA43P2F'
AWS_SECRET_KEY='zuf+tfteSlswRu7BJ86wekitnifILbZam1KYY3TG'





स्नोफ्लेक क्रिएट स्टेज कमांड का संदर्भ यहां उपलब्ध है: https://docs.snowflake.com/en/sql-reference/sql/create-stage.html

बाहरी टेबल पहुंच

स्नोफ्लेक में क्वेरीज़ को आंतरिक तालिकाओं पर निष्पादित किया जाना था। इसका मतलब यह था कि सारा डेटा - यहां तक कि तदर्थ प्रश्नों के लिए भी - स्नोफ्लेक में ले जाया जाना था। इसके परिणामस्वरूप लागत के साथ-साथ समय पर पूछताछ करने में असमर्थता भी हुई।


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


प्रारंभिक क्वेरी में लगने वाला समय स्थानांतरित किए जा रहे डेटा की मात्रा पर निर्भर करेगा, लेकिन रीड्स कैश्ड हैं और बाद की क्वेरीज़ अगले रीफ़्रेश होने तक तेज़ हो सकती हैं।


बाहरी तालिका दृष्टिकोण का उपयोग करने से डेटा को कॉपी करने की आवश्यकता नहीं होती है और बाल्टी को क्वेरीज़, जॉइन इत्यादि के लिए बाहरी तालिका के रूप में उपयोग किया जा सकता है।


हालाँकि, बदले में, लाभ बहुत बड़े हैं।


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


एक उदाहरण नीचे दिया गया है:



स्नोफ्लेक क्रिएट एक्सटर्नल टेबल कमांड का संदर्भ यहां उपलब्ध है: https://docs.snowflake.com/en/sql-reference/sql/create-external-table.html

स्नोफ्लेक सीएलआई (स्नोएसक्यूएल) का उपयोग करना

स्नोफ्लेक सीएलआई (स्नोएसक्यूएल) का उपयोग करके समान कमांड निष्पादित किए जा सकते हैं।


आप अपने प्लेटफ़ॉर्म पर स्नोएसक्यूएल कैसे स्थापित करें, इसके निर्देश यहां पा सकते हैं: https://docs.snowflake.com/en/user-guide/snowsql-install-config.html


फर्क सिर्फ इतना है कि आपको कमांड से शुरुआत करनी होगी


$ स्नोएसक्यूएल -ए <अकाउंट_आइडेंटिफ़ायर> -यू <यूज़र_नाम>


खाता-पहचानकर्ता <संगठन-नाम>-<खाता-नाम> प्रारूप का है। आप इसे स्नोफ्लेक कंसोल में एडमिन पेज से पा सकते हैं।



सारांश

और यही बात है.


यदि आप एक मिनिओ ग्राहक हैं जो स्नोफ्लेक क्षमताओं को जोड़ना चाहते हैं या यदि आप एक स्नोफ्लेक ग्राहक हैं जो स्नोफ्लेक के बाहर संग्रहीत डेटा में इसकी क्षमताओं का विस्तार करना चाहते हैं, तो इसे आज़माएं। किसी भी तरह से आप अपने वर्तमान निवेश से अधिक लाभ प्राप्त कर सकते हैं।


यहाँ भी प्रकाशित किया गया है.