जेफिरनेट लोगो

अमेज़ॅन रेडशिफ्ट में शून्य-ईटीएल एकीकरण के साथ MySQL डेटा के लिए अमेज़ॅन आरडीएस पर अंतर्दृष्टि अनलॉक करें | अमेज़न वेब सेवाएँ

दिनांक:

MySQL के लिए Amazon रिलेशनल डेटाबेस सर्विस (Amazon RDS) शून्य-ईटीएल एकीकरण के साथ अमेज़न रेडशिफ्ट था की घोषणा AWS re पर पूर्वावलोकन में: MySQL संस्करण 2023 या उच्चतर के लिए अमेज़ॅन आरडीएस के लिए इन्वेंट 8.0.28। इस पोस्ट में, हम इस सुविधा का उपयोग करके वास्तविक समय परिचालन विश्लेषण के साथ शुरुआत करने के बारे में चरण-दर-चरण मार्गदर्शन प्रदान करते हैं। यह पोस्ट शून्य-ईटीएल श्रृंखला की निरंतरता है जिसकी शुरुआत हुई थी अमेज़ॅन रेडशिफ्ट के साथ अमेज़ॅन अरोरा शून्य-ईटीएल एकीकरण का उपयोग करके लगभग वास्तविक समय परिचालन विश्लेषण के लिए आरंभिक मार्गदर्शिका.

चुनौतियां

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

  • परिचालन डेटाबेस में मौजूद डेटा का विश्लेषण करें (जैसे रीड प्रतिकृतियां, फ़ेडरेटेड क्वेरी और एनालिटिक्स एक्सेलेरेटर)
  • डेटा को डेटा वेयरहाउस जैसे केस-विशिष्ट क्वेरी चलाने के लिए अनुकूलित डेटा स्टोर में ले जाएं

शून्य-ईटीएल एकीकरण बाद वाले दृष्टिकोण को सरल बनाने पर केंद्रित है।

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

वैकल्पिक रूप से, डेटा का विश्लेषण करने वाले समाधान एकल डेटाबेस पर प्रश्नों में तेजी लाने के लिए बहुत अच्छा काम कर सकते हैं, लेकिन ऐसे समाधान उन ग्राहकों के लिए एकाधिक परिचालन डेटाबेस से डेटा एकत्र करने में सक्षम नहीं हैं जिन्हें एकीकृत विश्लेषण चलाने की आवश्यकता होती है।

शून्य-ईटीएल

पारंपरिक प्रणालियों के विपरीत जहां डेटा को एक डेटाबेस में बंद कर दिया जाता है और उपयोगकर्ता को एकीकृत विश्लेषण और प्रदर्शन के बीच व्यापार-बंद करना पड़ता है, डेटा इंजीनियर अब समग्र अंतर्दृष्टि प्राप्त करने के लिए MySQL डेटाबेस के लिए कई आरडीएस से डेटा को एक ही रेडशिफ्ट डेटा वेयरहाउस में दोहरा सकते हैं। अनेक अनुप्रयोग या विभाजन. ट्रांजेक्शनल डेटाबेस में अपडेट स्वचालित रूप से और लगातार अमेज़ॅन रेडशिफ्ट पर प्रसारित होते हैं ताकि डेटा इंजीनियरों के पास वास्तविक समय में नवीनतम जानकारी हो। प्रबंधन के लिए कोई बुनियादी ढांचा नहीं है और डेटा वॉल्यूम के आधार पर एकीकरण स्वचालित रूप से ऊपर और नीचे हो सकता है।

AWS में, हम अपने को लाने की दिशा में लगातार प्रगति कर रहे हैं शून्य-ईटीएल दृष्टि जीवन के लिए। निम्नलिखित स्रोत वर्तमान में शून्य-ईटीएल एकीकरण के लिए समर्थित हैं:

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

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

निम्नलिखित चित्र इस वास्तुकला को दर्शाता है।

एडब्ल्यूएस आर्किटेक्चर आरेख उदाहरण शून्य-ईटीएल आर्किटेक्चर का प्रदर्शन करता है

समाधान अवलोकन

चलो गौर करते हैं टिकट, एक काल्पनिक वेबसाइट जहां उपयोगकर्ता खेल आयोजनों, शो और संगीत कार्यक्रमों के लिए ऑनलाइन टिकट खरीदते और बेचते हैं। इस वेबसाइट से लेनदेन संबंधी डेटा को MySQL 8.0.28 (या उच्चतर संस्करण) डेटाबेस के लिए Amazon RDS में लोड किया गया है। कंपनी के व्यवसाय विश्लेषक समय के साथ टिकटों की आवाजाही, विक्रेताओं के लिए सफलता दर और सबसे अधिक बिकने वाले आयोजनों, स्थानों और सीज़न की पहचान करने के लिए मेट्रिक्स तैयार करना चाहते हैं। वे शून्य-ईटीएल एकीकरण का उपयोग करके इन मेट्रिक्स को वास्तविक समय में प्राप्त करना चाहेंगे।

एकीकरण MySQL (स्रोत) और अमेज़ॅन रेडशिफ्ट (गंतव्य) के लिए अमेज़ॅन आरडीएस के बीच स्थापित किया गया है। स्रोत से लेनदेन संबंधी डेटा गंतव्य पर वास्तविक समय में ताज़ा हो जाता है, जो विश्लेषणात्मक प्रश्नों को संसाधित करता है।

आप Amazon Redshift के लिए या तो सर्वर रहित विकल्प या एन्क्रिप्टेड RA3 क्लस्टर का उपयोग कर सकते हैं। इस पोस्ट के लिए, हम एक प्रावधानित आरडीएस डेटाबेस और एक रेडशिफ्ट प्रावधानित डेटा वेयरहाउस का उपयोग करते हैं।

निम्न चित्र उच्च स्तरीय वास्तुकला को दर्शाता है।

TICKIT डेटा उपयोग मामले के लिए उच्च स्तरीय शून्य-ईटीएल आर्किटेक्चर

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

  1. कस्टम DB पैरामीटर समूह के साथ MySQL स्रोत के लिए RDS कॉन्फ़िगर करें।
  2. केस-संवेदी पहचानकर्ताओं को सक्षम करने के लिए रेडशिफ्ट क्लस्टर को कॉन्फ़िगर करें।
  3. आवश्यक अनुमतियाँ कॉन्फ़िगर करें.
  4. शून्य-ईटीएल एकीकरण बनाएं।
  5. Amazon Redshift में एकीकरण से एक डेटाबेस बनाएं।

अनुकूलित DB पैरामीटर समूह के साथ MySQL स्रोत के लिए RDS कॉन्फ़िगर करें

MySQL डेटाबेस के लिए RDS बनाने के लिए, निम्नलिखित चरणों को पूरा करें:

  1. अमेज़ॅन आरडीएस कंसोल पर, एक डीबी पैरामीटर समूह बनाएं जिसे कहा जाता है zero-etl-custom-pg.

शून्य-ईटीएल एकीकरण MySQL डेटाबेस द्वारा उत्पन्न बाइनरी लॉग (बिनलॉग) का उपयोग करके काम करता है। MySQL के लिए Amazon RDS पर बिनलॉग सक्षम करने के लिए, पैरामीटर का एक विशिष्ट सेट सक्षम होना चाहिए।

  1. निम्नलिखित बिनलॉग क्लस्टर पैरामीटर सेटिंग्स सेट करें:
    • binlog_format = ROW
    • binlog_row_image = FULL
    • binlog_checksum = NONE

इसके अलावा, सुनिश्चित करें कि binlog_row_value_options पैरामीटर सेट नहीं है PARTIAL_JSON. डिफ़ॉल्ट रूप से, यह पैरामीटर सेट नहीं है.

  1. चुनें डेटाबेस नेविगेशन फलक में, फिर चुनें डेटाबेस बनाएँ.
  2. के लिए इंजन संस्करण, चुनें MySQL 8.0.28 (या उच्चतर)।

चयनित MySQL सामुदायिक संस्करण इंजन संस्करण 8.0.36

  1. के लिए टेम्पलेट्स, चुनते हैं उत्पादन.
  2. के लिए उपलब्धता एवं स्थायित्व, या तो चुनें मल्टी-एजेड डीबी उदाहरण or एकल DB उदाहरण (मल्टी-एज़ेड डीबी क्लस्टर इस लेखन के समय समर्थित नहीं हैं)।
  3. के लिए डीबी उदाहरण पहचानकर्ता, दर्ज zero-etl-source-rms.

चयनित उत्पादन टेम्पलेट, मल्टी-एज़ेड डीबी इंस्टेंस और डीबी इंस्टेंस पहचानकर्ता शून्य-ईटीएल-स्रोत-आरएमएस

  1. के अंतर्गत उदाहरण विन्यास, चुनते हैं मेमोरी अनुकूलित कक्षाएं और उदाहरण चुनें db.r6g.large, जो TICKIT उपयोग के मामले के लिए पर्याप्त होना चाहिए।

इंस्टेंस कॉन्फ़िगरेशन के अंतर्गत DB इंस्टेंस क्लास के लिए चयनित db.r6g.large

  1. के अंतर्गत अतिरिक्त विन्यासके लिए, DB क्लस्टर पैरामीटर समूह, आपके द्वारा पहले बनाया गया पैरामीटर समूह चुनें (zero-etl-custom-pg).

अतिरिक्त कॉन्फ़िगरेशन के अंतर्गत चयनित DB पैरामीटर समूह जीरो-ईटीएल-कस्टम-पीजी

  1. चुनें डेटाबेस बनाएँ.

कुछ मिनटों में, इसे शून्य-ईटीएल एकीकरण के स्रोत के रूप में MySQL डेटाबेस के लिए एक आरडीएस तैयार करना चाहिए।

आरडीएस इंस्टेंस स्थिति उपलब्ध के रूप में दिखाई दे रही है

रेडशिफ्ट गंतव्य को कॉन्फ़िगर करें

अपना स्रोत DB क्लस्टर बनाने के बाद, आपको Amazon Redshift में एक लक्ष्य डेटा वेयरहाउस बनाना और कॉन्फ़िगर करना होगा। डेटा वेयरहाउस को निम्नलिखित आवश्यकताओं को पूरा करना होगा:

हमारे उपयोग के मामले में, निम्नलिखित चरणों को पूरा करके एक रेडशिफ्ट क्लस्टर बनाएं:

  1. Amazon Redshift कंसोल पर, चुनें विन्यास और फिर चुनें कार्यभार प्रबंधन.
  2. पैरामीटर समूह अनुभाग में, चुनें बनाएं.
  3. नामक एक नया पैरामीटर समूह बनाएं zero-etl-rms.
  4. चुनें पैरामीटर संपादित करें और का मान बदलें enable_case_sensitive_identifier सेवा मेरे True.
  5. चुनें सहेजें.

तुम भी उपयोग कर सकते हैं AWS कमांड लाइन इंटरफ़ेस (एडब्ल्यूएस सीएलआई) कमांड अद्यतन-कार्यसमूह रेडशिफ्ट सर्वर रहित के लिए:

aws redshift-serverless update-workgroup --workgroup-name <your-workgroup-name> --config-parameters parameterKey=enable_case_sensitive_identifier,parameterValue=true

क्लस्टर पैरामीटर समूह सेटअप

  1. चुनें प्रावधानित क्लस्टर डैशबोर्ड.

कंसोल विंडो के शीर्ष पर, आपको एक दिखाई देगा पूर्वावलोकन में नई Amazon Redshift सुविधाएँ आज़माएँ बैनर।

  1. चुनें पूर्वावलोकन क्लस्टर बनाएँ.

पूर्वावलोकन क्लस्टर बनाएँ

  1. के लिए पूर्वावलोकन ट्रैक, चुना है preview_2023.
  2. के लिए नोड प्रकार, समर्थित नोड प्रकारों में से एक चुनें (इस पोस्ट के लिए, हम इसका उपयोग करते हैं ra3.xlplus).

पूर्वावलोकन क्लस्टर के लिए चयनित ra3.xlplus नोड प्रकार

  1. के अंतर्गत अतिरिक्त विन्यास, विस्तार डेटाबेस विन्यास.
  2. के लिए पैरामीटर समूह, चुनें zero-etl-rms.
  3. के लिए कूटलेखन, चुनते हैं AWS कुंजी प्रबंधन सेवा का उपयोग करें.

डेटाबेस कॉन्फ़िगरेशन पैरामीटर समूह और एन्क्रिप्शन दिखा रहा है

  1. चुनें क्लस्टर बनाएं.

क्लस्टर बनना चाहिए उपलब्ध कुछ ही मिनटों में।

क्लस्टर स्थिति उपलब्ध के रूप में दिखाई जा रही है

  1. नेमस्पेस पर नेविगेट करें zero-etl-target-rs-ns और चुनिए संसाधन नीति टैब.
  2. चुनें अधिकृत प्रिंसिपल जोड़ें.
  3. या तो AWS उपयोगकर्ता या भूमिका का Amazon संसाधन नाम (ARN), या AWS खाता आईडी (IAM प्रिंसिपल) दर्ज करें जिन्हें एकीकरण बनाने की अनुमति है।

एक खाता आईडी को रूट उपयोगकर्ता के साथ एआरएन के रूप में संग्रहीत किया जाता है।

क्लस्टर संसाधन नीति टैब पर अधिकृत प्रिंसिपल जोड़ें

  1. में अधिकृत एकीकरण स्रोत अनुभाग चुनते हैं, अधिकृत एकीकरण स्रोत जोड़ें MySQL DB उदाहरण के लिए RDS का ARN जोड़ने के लिए जो शून्य-ETL एकीकरण के लिए डेटा स्रोत है।

आप यह मान अमेज़न आरडीएस कंसोल पर जाकर और नेविगेट करके पा सकते हैं विन्यास का टैब zero-etl-source-rms डीबी उदाहरण.

जीरो-ईटीएल-सोर्स-आरएमएस डीबी इंस्टेंस के कॉन्फ़िगरेशन टैब में अधिकृत एकीकरण स्रोत जोड़ें

आपकी संसाधन नीति निम्नलिखित स्क्रीनशॉट के समान होनी चाहिए।

पूर्ण संसाधन नीति सेटअप

आवश्यक अनुमतियाँ कॉन्फ़िगर करें

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

  • MySQL DB उदाहरण के लिए स्रोत RDS के लिए शून्य-ईटीएल एकीकरण बनाएं।
  • सभी शून्य-ईटीएल एकीकरण देखें और हटाएं।
  • लक्ष्य डेटा वेयरहाउस में इनबाउंड एकीकरण बनाएं। यदि उसी खाते के पास रेडशिफ्ट डेटा वेयरहाउस है और यह खाता उस डेटा वेयरहाउस के लिए अधिकृत प्रिंसिपल है तो इस अनुमति की आवश्यकता नहीं है। यह भी ध्यान दें कि अमेज़ॅन रेडशिफ्ट के पास प्रावधानित और सर्वर रहित क्लस्टर के लिए एक अलग एआरएन प्रारूप है:
    • प्रावधान किए गए - arn:aws:redshift:{region}:{account-id}:namespace:namespace-uuid
    • serverless - arn:aws:redshift-serverless:{region}:{account-id}:namespace/namespace-uuid

अनुमतियाँ कॉन्फ़िगर करने के लिए निम्नलिखित चरणों को पूरा करें:

  1. IAM कंसोल पर, चुनें Policies नेविगेशन फलक में
  2. चुनें नीति बनाएं.
  3. नामक एक नई नीति बनाएँ rds-integrations निम्नलिखित JSON का उपयोग करें (प्रतिस्थापित करें)। region और account-id अपने वास्तविक मूल्यों के साथ):
{
    "Version": "2012-10-17",
    "Statement": [{
        "Effect": "Allow",
        "Action": [
            "rds:CreateIntegration"
        ],
        "Resource": [
            "arn:aws:rds:{region}:{account-id}:db:source-instancename",
            "arn:aws:rds:{region}:{account-id}:integration:*"
        ]
    },
    {
        "Effect": "Allow",
        "Action": [
            "rds:DescribeIntegration"
        ],
        "Resource": ["*"]
    },
    {
        "Effect": "Allow",
        "Action": [
            "rds:DeleteIntegration"
        ],
        "Resource": [
            "arn:aws:rds:{region}:{account-id}:integration:*"
        ]
    },
    {
        "Effect": "Allow",
        "Action": [
            "redshift:CreateInboundIntegration"
        ],
        "Resource": [
            "arn:aws:redshift:{region}:{account-id}:cluster:namespace-uuid"
        ]
    }]
}
  1. आपके द्वारा बनाई गई नीति को अपने IAM उपयोगकर्ता या भूमिका अनुमतियों के साथ संलग्न करें।

शून्य-ईटीएल एकीकरण बनाएं

शून्य-ईटीएल एकीकरण बनाने के लिए, निम्नलिखित चरणों को पूरा करें:

  1. Amazon RDS कंसोल पर, चुनें शून्य-ईटीएल एकीकरण नेविगेशन फलक में
  2. चुनें शून्य-ईटीएल एकीकरण बनाएं.

अमेज़ॅन आरडीएस कंसोल पर शून्य-ईटीएल एकीकरण बनाएं

  1. के लिए एकीकरण पहचानकर्ता, उदाहरण के लिए, एक नाम दर्ज करें zero-etl-demo.

एकीकरण पहचानकर्ता दर्ज करें

  1. के लिए स्रोत डेटाबेस, चुनें आरडीएस डेटाबेस ब्राउज़ करें और स्रोत क्लस्टर चुनें zero-etl-source-rms.
  2. चुनें अगला.

शून्य-ईटीएल स्रोत के लिए आरडीएस डेटाबेस ब्राउज़ करें

  1. के अंतर्गत लक्ष्यके लिए, अमेज़ॅन रेडशिफ्ट डेटा वेयरहाउस, चुनें रेडशिफ्ट डेटा वेयरहाउस ब्राउज़ करें और रेडशिफ्ट डेटा वेयरहाउस चुनें (zero-etl-target-rs).
  2. चुनें अगला.

शून्य-ईटीएल एकीकरण के लिए रेडशिफ्ट डेटा वेयरहाउस ब्राउज़ करें

  1. यदि लागू हो तो टैग और एन्क्रिप्शन जोड़ें।
  2. चुनें अगला.
  3. एकीकरण नाम, स्रोत, लक्ष्य और अन्य सेटिंग्स सत्यापित करें।
  4. चुनें शून्य-ईटीएल एकीकरण बनाएं.

शून्य-ईटीएल एकीकरण चरण 4 बनाएं

आप विवरण देखने और इसकी प्रगति की निगरानी करने के लिए एकीकरण चुन सकते हैं। स्थिति बदलने में लगभग 30 मिनट का समय लगा बनाना सेवा मेरे सक्रिय.

शून्य-ईटीएल एकीकरण विवरण

स्रोत में आपके डेटासेट के आकार के आधार पर समय अलग-अलग होगा।

Amazon Redshift में एकीकरण से एक डेटाबेस बनाएं

शून्य-ईटीएल एकीकरण से अपना डेटाबेस बनाने के लिए, निम्नलिखित चरणों को पूरा करें:

  1. Amazon Redshift कंसोल पर, चुनें क्लस्टर नेविगेशन फलक में
  2. ओपन zero-etl-target-rs क्लस्टर।
  3. चुनें क्वेरी डेटा क्वेरी संपादक v2 खोलने के लिए.

क्वेरी संपादक v2 के माध्यम से क्वेरी डेटा

  1. चुनकर Redshift डेटा वेयरहाउस से कनेक्ट करें सहेजें.

रेडशिफ्ट डेटा वेयरहाउस से कनेक्ट करें

  1. प्राप्त करते हैं integration_id से svv_integration सिस्टम तालिका:

select integration_id from svv_integration; -- copy this result, use in the next sql

एकीकरण पहचानकर्ता के लिए क्वेरी

  1. उपयोग integration_id एकीकरण से एक नया डेटाबेस बनाने के लिए पिछले चरण से:

CREATE DATABASE zetl_source FROM INTEGRATION '<result from above>';

एकीकरण से डेटाबेस बनाएं

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

वास्तविक समय के लेन-देन डेटा का विश्लेषण करें

अब हम TICKIT के परिचालन डेटा पर विश्लेषण चला सकते हैं।

स्रोत TICKIT डेटा पॉप्युलेट करें

स्रोत डेटा भरने के लिए, निम्नलिखित चरणों को पूरा करें:

  1. CSV इनपुट डेटा फ़ाइलों को स्थानीय निर्देशिका में कॉपी करें। निम्नलिखित एक उदाहरण आदेश है:

aws s3 cp 's3://redshift-blogs/zero-etl-integration/data/tickit' . --recursive

  1. MySQL क्लस्टर के लिए अपने RDS से कनेक्ट करें और TICKIT डेटा मॉडल के लिए एक डेटाबेस या स्कीमा बनाएं, सत्यापित करें कि उस स्कीमा में तालिकाओं में प्राथमिक कुंजी है, और लोड प्रक्रिया शुरू करें:

mysql -h <rds_db_instance_endpoint> -u admin -p password --local-infile=1

MySQL क्लस्टर के लिए अपने RDS से कनेक्ट करें और TICKIT डेटा मॉडल के लिए एक डेटाबेस या स्कीमा बनाएं

  1. निम्न का उपयोग करें टेबल कमांड बनाएं.
  2. लोड डेटा कमांड का उपयोग करके स्थानीय फ़ाइलों से डेटा लोड करें।

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

डेमो के लिए उपयोगकर्ता तालिका बनाएं

गंतव्य में स्रोत TICKIT डेटा का विश्लेषण करें

अमेज़ॅन रेडशिफ्ट कंसोल पर, एकीकरण सेटअप के हिस्से के रूप में आपके द्वारा बनाए गए डेटाबेस का उपयोग करके क्वेरी संपादक v2 खोलें। बीज या सीडीसी गतिविधि को सत्यापित करने के लिए निम्नलिखित कोड का उपयोग करें:

SELECT * FROM SYS_INTEGRATION_ACTIVITY ORDER BY last_commit_timestamp DESC;

बीज या सीडीसी गतिविधि को मान्य करने के लिए क्वेरी

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

निगरानी

आप Amazon Redshift के साथ अपने शून्य-ईटीएल एकीकरण के बारे में जानकारी प्राप्त करने के लिए Amazon Redshift में निम्नलिखित सिस्टम दृश्यों और तालिकाओं को क्वेरी कर सकते हैं:

एकीकरण-संबंधित मेट्रिक्स को देखने के लिए यहां प्रकाशित करें अमेज़ॅन क्लाउडवॉच, Amazon Redshift कंसोल खोलें। चुनना शून्य-ईटीएल एकीकरण नेविगेशन फलक में और गतिविधि मेट्रिक्स प्रदर्शित करने के लिए एकीकरण चुनें।

शून्य-ईटीएल एकीकरण गतिविधि मेट्रिक्स

अमेज़ॅन रेडशिफ्ट कंसोल पर उपलब्ध मेट्रिक्स एकीकरण मेट्रिक्स और तालिका आँकड़े हैं, जिसमें तालिका आँकड़े MySQL के लिए अमेज़ॅन आरडीएस से अमेज़ॅन रेडशिफ्ट तक प्रतिकृति प्रत्येक तालिका का विवरण प्रदान करते हैं।

एकीकरण मेट्रिक्स और तालिका आँकड़े

एकीकरण मेट्रिक्स में तालिका प्रतिकृति सफलता और विफलता गणना और अंतराल विवरण शामिल हैं।

एकीकरण मेट्रिक्स तालिका प्रतिकृति सफलता और विफलता गणना और अंतराल विवरण दिखा रहा है। एकीकरण मेट्रिक्स तालिका प्रतिकृति सफलता और विफलता गणना और अंतराल विवरण दिखा रहा है। एकीकरण मेट्रिक्स तालिका प्रतिकृति सफलता और विफलता गणना और अंतराल विवरण दिखा रहा है।

मैन्युअल पुन: समन्वयन

यदि तालिका सिंक स्थिति विफल या पुन: सिंक की आवश्यकता के रूप में दिखाई देती है, तो शून्य-ईटीएल एकीकरण स्वचालित रूप से एक पुन: सिंक शुरू कर देगा। लेकिन यदि ऑटो रीसिंक विफल हो जाता है, तो आप टेबल-स्तरीय ग्रैन्युलैरिटी पर रीसिंक शुरू कर सकते हैं:

ALTER DATABASE zetl_source INTEGRATION REFRESH TABLES tbl1, tbl2;

एक तालिका कई कारणों से विफल स्थिति में प्रवेश कर सकती है:

  • प्राथमिक कुंजी को तालिका से हटा दिया गया था. ऐसे मामलों में, आपको प्राथमिक कुंजी को फिर से जोड़ना होगा और पहले बताए गए ALTER कमांड को निष्पादित करना होगा।
  • प्रतिकृति के दौरान एक अमान्य मान सामने आता है या असमर्थित डेटा प्रकार के साथ तालिका में एक नया कॉलम जोड़ा जाता है। ऐसे मामलों में, आपको असमर्थित डेटा प्रकार वाले कॉलम को हटाने और पहले बताए गए ALTER कमांड को निष्पादित करने की आवश्यकता है।
  • एक आंतरिक त्रुटि, दुर्लभ मामलों में, तालिका विफलता का कारण बन सकती है। ALTER कमांड को इसे ठीक करना चाहिए।

क्लीन अप

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

शून्य-ईटीएल एकीकरण को हटाने के लिए, निम्नलिखित चरणों को पूरा करें:

  1. Amazon RDS कंसोल पर, चुनें शून्य-ईटीएल एकीकरण नेविगेशन फलक में
  2. वह शून्य-ईटीएल एकीकरण चुनें जिसे आप हटाना चाहते हैं और चुनें मिटाना.
  3. विलोपन की पुष्टि करने के लिए, चुनें मिटाना.

शून्य-ईटीएल एकीकरण हटाएं

निष्कर्ष

इस पोस्ट में, हमने आपको दिखाया कि MySQL के लिए Amazon RDS से Amazon Redshift तक शून्य-ETL एकीकरण कैसे सेट किया जाए। यह जटिल डेटा पाइपलाइनों को बनाए रखने की आवश्यकता को कम करता है और लेनदेन और परिचालन डेटा पर वास्तविक समय विश्लेषण को सक्षम बनाता है।

Amazon Redshift के साथ Amazon RDS जीरो-ETL एकीकरण के बारे में अधिक जानने के लिए, देखें अमेज़ॅन रेडशिफ्ट के साथ अमेज़ॅन आरडीएस शून्य-ईटीएल एकीकरण के साथ काम करना (पूर्वावलोकन).


 लेखक के बारे में

मिलिंद ओके एक वरिष्ठ रेडशिफ्ट विशेषज्ञ समाधान वास्तुकार हैं जिन्होंने अमेज़ॅन वेब सर्विसेज में तीन वर्षों तक काम किया है। वह क्वींस, न्यूयॉर्क में स्थित एक एडब्ल्यूएस-प्रमाणित एसए एसोसिएट, सिक्योरिटी स्पेशलिटी और एनालिटिक्स स्पेशलिटी प्रमाणन धारक है।

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

स्पॉट_आईएमजी

नवीनतम खुफिया

स्पॉट_आईएमजी