1. Google Cloud Storage और Dataflow का इस्तेमाल करके, Snowflake से Spanner तक रिवर्स ईटीएल पाइपलाइन बनाना
परिचय
इस लैब में, रिवर्स ईटीएल पाइपलाइन बनाई जाती है. आम तौर पर, ईटीएल (डेटा निकालना, ट्रांसफ़ॉर्म करना, और लोड करना) पाइपलाइन, ऑपरेशनल डेटाबेस से डेटा को Snowflake जैसे डेटा वेयरहाउस में ले जाती हैं, ताकि उसका विश्लेषण किया जा सके. रिवर्स ईटीएल पाइपलाइन, ईटीएल पाइपलाइन के उलट काम करती है. यह प्रोसेस किए गए डेटा को डेटा वेयरहाउस से वापस ऑपरेशनल सिस्टम में ले जाती है. इससे ऐप्लिकेशन को बेहतर बनाने, उपयोगकर्ताओं को सुविधाएं देने या रीयल-टाइम में फ़ैसले लेने में मदद मिलती है.
इस उदाहरण में, Snowflake टेबल से सैंपल डेटासेट को Spanner में ले जाने का तरीका बताया गया है. Spanner, दुनिया भर में उपलब्ध रिलेशनल डेटाबेस है. यह ऐसे ऐप्लिकेशन के लिए सबसे सही है जो हर समय उपलब्ध रहते हैं.
इसके लिए, Google Cloud Storage (GCS) और Dataflow का इस्तेमाल इंटरमीडिएट चरणों के तौर पर किया जाता है. यहां इस आर्किटेक्चर के फ़्लो और इसके पीछे की वजह के बारे में बताया गया है:
- Snowflake से Google Cloud Storage (GCS) में CSV फ़ॉर्मैट में डेटा ट्रांसफ़र करना:
- पहला चरण, Snowflake से डेटा को ओपन और यूनिवर्सल फ़ॉर्मैट में निकालना है. CSV फ़ाइल में एक्सपोर्ट करना, पोर्टेबल डेटा फ़ाइलें बनाने का एक सामान्य और आसान तरीका है. हम इन फ़ाइलों को GCS में स्टेज करेंगे. यह ऑब्जेक्ट स्टोरेज का ऐसा समाधान है जिसे बढ़ाया जा सकता है और जो टिकाऊ है.
- GCS से Spanner (Dataflow के ज़रिए):
- GCS से डेटा पढ़ने और Spanner में डेटा लिखने के लिए, कस्टम स्क्रिप्ट लिखने के बजाय, Google Dataflow का इस्तेमाल किया जाता है. यह डेटा प्रोसेसिंग की पूरी तरह से मैनेज की जाने वाली सेवा है. डेटाफ़्लो, इस तरह के टास्क के लिए पहले से बने टेंप्लेट उपलब्ध कराता है. "GCS Text to Cloud Spanner" टेंप्लेट का इस्तेमाल करके, डेटा प्रोसेसिंग का कोई भी कोड लिखे बिना, ज़्यादा थ्रूपुट वाला डेटा इंपोर्ट किया जा सकता है. इससे डेवलपमेंट में लगने वाला समय काफ़ी कम हो जाता है.
आपको क्या सीखने को मिलेगा
- Snowflake में डेटा लोड करने का तरीका
- GCS बकेट बनाने का तरीका
- Snowflake टेबल को CSV फ़ॉर्मैट में GCS में एक्सपोर्ट करने का तरीका
- स्पैनर इंस्टेंस सेट अप करने का तरीका
- Dataflow की मदद से, CSV टेबल को Spanner में लोड करने का तरीका
2. सेटअप, ज़रूरी शर्तें, और सीमाएं
ज़रूरी शर्तें
- Snowflake खाता.
- Spanner, Cloud Storage, और Dataflow API की सुविधा वाला Google Cloud खाता.
- वेब ब्राउज़र से Google Cloud Console को ऐक्सेस किया जा सकता हो.
- टर्मिनल में Google Cloud CLI इंस्टॉल होना चाहिए.
- अगर आपके Google Cloud संगठन में
iam.allowedPolicyMemberDomainsनीति चालू है, तो एडमिन को बाहरी डोमेन के सेवा खातों को अनुमति देने के लिए, अपवाद की अनुमति देनी पड़ सकती है. यह जानकारी, बाद के चरण में दी जाएगी.
Google Cloud Platform IAM की अनुमतियां
इस कोडलैब में दिए गए सभी चरणों को पूरा करने के लिए, Google खाते के पास ये अनुमतियां होनी चाहिए.
सेवा खाते | ||
| इससे सेवा खाते बनाए जा सकते हैं. | |
Spanner | ||
| इससे नया Spanner इंस्टेंस बनाया जा सकता है. | |
| DDL स्टेटमेंट चलाने की अनुमति देता है, ताकि | |
| इसकी मदद से, डेटाबेस में टेबल बनाने के लिए DDL स्टेटमेंट चलाए जा सकते हैं. | |
Google Cloud Storage | ||
| इस विकल्प की मदद से, एक्सपोर्ट की गई Parquet फ़ाइलों को सेव करने के लिए, नया GCS बकेट बनाया जा सकता है. | |
| इस भूमिका की मदद से, एक्सपोर्ट की गई Parquet फ़ाइलों को GCS बकेट में लिखा जा सकता है. | |
| इससे BigQuery को GCS बकेट से Parquet फ़ाइलें पढ़ने की अनुमति मिलती है. | |
| इससे BigQuery को GCS बकेट में मौजूद Parquet फ़ाइलों की सूची बनाने की अनुमति मिलती है. | |
डेटाफ़्लो | ||
| इससे Dataflow से वर्क आइटम को क्लेम करने की अनुमति मिलती है. | |
| इस कुकी से, Dataflow वर्कर को Dataflow सेवा पर वापस मैसेज भेजने की अनुमति मिलती है. | |
| इस भूमिका की मदद से, Dataflow वर्कर को Google Cloud Logging में लॉग एंट्री लिखने की अनुमति मिलती है. | |
इन अनुमतियों वाली पहले से तय की गई भूमिकाओं का इस्तेमाल किया जा सकता है.
|
|
|
|
|
|
|
|
सीमाएं
एक सिस्टम से दूसरे सिस्टम में डेटा ट्रांसफ़र करते समय, डेटा टाइप के अंतर के बारे में जानकारी होना ज़रूरी है.
- Snowflake से CSV: एक्सपोर्ट करते समय, Snowflake के डेटा टाइप को स्टैंडर्ड टेक्स्ट फ़ॉर्मैट में बदल दिया जाता है.
- CSV से Spanner में डेटा इंपोर्ट करना: इंपोर्ट करते समय, यह पक्का करना ज़रूरी है कि टारगेट Spanner के डेटा टाइप, CSV फ़ाइल में मौजूद स्ट्रिंग के साथ काम करते हों. इस लैब में, टाइप मैपिंग के सामान्य सेट के बारे में बताया गया है.
फिर से इस्तेमाल की जा सकने वाली प्रॉपर्टी सेट अप करना
इस लैब में कुछ वैल्यू की ज़रूरत बार-बार पड़ेगी. इसे आसान बनाने के लिए, हम इन वैल्यू को शेल वैरिएबल पर सेट करेंगे, ताकि बाद में इनका इस्तेमाल किया जा सके.
- GCP_REGION - वह खास क्षेत्र जहां GCP संसाधन मौजूद होंगे. इन क्षेत्रों की सूची यहां देखी जा सकती है.
- GCP_PROJECT - इस्तेमाल किया जाने वाला GCP प्रोजेक्ट आईडी.
- GCP_BUCKET_NAME - बनाया जाने वाला GCS बकेट का नाम. साथ ही, वह जगह जहां डेटा फ़ाइलें सेव की जाएंगी.
- SPANNER_INSTANCE - Spanner इंस्टेंस को असाइन किया जाने वाला नाम
- SPANNER_DB - Spanner इंस्टेंस में डेटाबेस को असाइन किया जाने वाला नाम
export GCP_REGION = <GCP REGION HERE>
export GCP_PROJECT= <GCP PROJECT HERE>
export GCS_BUCKET_NAME = <GCS BUCKET NAME HERE>
export SPANNER_INSTANCE = <SPANNER INSTANCE ID HERE>
export SPANNER_DB = <SPANNER DATABASE ID HERE>
Google Cloud
इस लैब के लिए, Google Cloud प्रोजेक्ट की ज़रूरत होती है.
Google Cloud प्रोजेक्ट
प्रोजेक्ट, Google Cloud में संगठन की बुनियादी इकाई होती है. अगर एडमिन ने आपको कोई कोड दिया है, तो इस चरण को छोड़ा जा सकता है.
सीएलआई का इस्तेमाल करके, इस तरह प्रोजेक्ट बनाया जा सकता है:
gcloud projects create $GCP_PROJECT
gcloud config set project $GCP_PROJECT
प्रोजेक्ट बनाने और मैनेज करने के बारे में ज़्यादा जानने के लिए, यहां जाएं.
3. Spanner सेट अप करना
Spanner का इस्तेमाल शुरू करने के लिए, आपको एक इंस्टेंस और एक डेटाबेस उपलब्ध कराना होगा. Spanner इंस्टेंस को कॉन्फ़िगर करने और बनाने के बारे में जानकारी यहां मिल सकती है.
इंस्टेंस बनाना
gcloud spanner instances create $SPANNER_INSTANCE \
--config=regional-$GCP_REGION \
--description="Codelabs Snowflake RETL" \
--processing-units=100 \
--edition=ENTERPRISE
डेटाबेस बनाना
gcloud spanner databases create $SPANNER_DB \
--instance=$SPANNER_INSTANCE
4. Google Cloud Storage बकेट बनाना
Google Cloud Storage (GCS) का इस्तेमाल, Snowflake से जनरेट हुई CSV डेटा फ़ाइलों को अस्थायी तौर पर सेव करने के लिए किया जाएगा. ऐसा तब तक किया जाएगा, जब तक उन्हें Spanner में इंपोर्ट नहीं कर लिया जाता.
बकेट बनाना
किसी खास क्षेत्र (जैसे, us-central1) में स्टोरेज बकेट बनाने के लिए, यहां दिए गए निर्देश का इस्तेमाल करें.
gcloud storage buckets create gs://$GCS_BUCKET_NAME --location=$GCP_REGION
बकेट बनाने की पुष्टि करना
जब यह निर्देश काम कर जाए, तो सभी बकेट की सूची बनाकर नतीजे देखें. नई बकेट, नतीजों की सूची में दिखनी चाहिए. बकेट रेफ़रंस आम तौर पर, बकेट के नाम के आगे gs:// प्रीफ़िक्स के साथ दिखते हैं.
gcloud storage ls | grep gs://$GCS_BUCKET_NAME
फ़ाइल या एंट्री में बदलाव करने की अनुमतियों की जांच करना
इस चरण से यह पक्का किया जाता है कि लोकल एनवायरमेंट की पुष्टि सही तरीके से हो गई हो और उसके पास नई बकेट में फ़ाइलें लिखने की ज़रूरी अनुमतियां हों.
echo "Hello, GCS" | gcloud storage cp - gs://$GCS_BUCKET_NAME/hello.txt
अपलोड की गई फ़ाइल की पुष्टि करना
बकेट में मौजूद ऑब्जेक्ट की सूची बनाएं. अभी अपलोड की गई फ़ाइल का पूरा पाथ दिखना चाहिए.
gcloud storage ls gs://$GCS_BUCKET_NAME
आपको यह आउटपुट दिखेगा:
gs://$GCS_BUCKET_NAME/hello.txt
किसी बकेट में मौजूद ऑब्जेक्ट का कॉन्टेंट देखने के लिए, gcloud storage cat का इस्तेमाल किया जा सकता है.
gcloud storage cat gs://$GCS_BUCKET_NAME/hello.txt
फ़ाइल का कॉन्टेंट दिखना चाहिए:
Hello, GCS
टेस्ट फ़ाइल मिटाना
Cloud Storage बकेट अब सेट अप हो गया है. अब अस्थायी टेस्ट फ़ाइल को मिटाया जा सकता है.
gcloud storage rm gs://$GCS_BUCKET_NAME/hello.txt
जवाब में, मिटाए जाने की पुष्टि होनी चाहिए:
Removing gs://$GCS_BUCKET_NAME/hello.txt... / [1 objects] Operation completed over 1 objects.
5. Snowflake से GCS में एक्सपोर्ट करना
इस लैब के लिए, TPC-H डेटासेट का इस्तेमाल किया जाएगा. यह फ़ैसले लेने में मदद करने वाले सिस्टम के लिए, इंडस्ट्री स्टैंडर्ड बेंचमार्क है. यह डेटासेट, सभी Snowflake खातों में डिफ़ॉल्ट रूप से उपलब्ध होता है.
Snowflake में डेटा तैयार करना
Snowflake खाते में लॉग इन करें और नई वर्कशीट बनाएं.
अनुमतियों की वजह से, Snowflake की ओर से उपलब्ध कराए गए टीपीसी-एच के सैंपल डेटा को, शेयर की गई जगह से सीधे एक्सपोर्ट नहीं किया जा सकता. सबसे पहले, ORDERS टेबल को किसी दूसरे डेटाबेस और स्कीमा में कॉपी करना होगा.
डेटाबेस बनाना
- बाईं ओर मौजूद मेन्यू में, Horizon Catalog में जाकर, Catalog पर कर्सर घुमाएं. इसके बाद, Database Explorer पर क्लिक करें
- डेटाबेस पेज पर जाकर, सबसे ऊपर दाईं ओर मौजूद + डेटाबेस बटन पर क्लिक करें.
- नई db
codelabs_retl_dbको नाम दें
वर्कशीट बनाना
डेटाबेस के ख़िलाफ़ SQL कमांड चलाने के लिए, वर्कशीट की ज़रूरत होगी.
वर्कशीट बनाने के लिए:
- बाईं ओर मौजूद मेन्यू में, डेटा के साथ काम करें में जाकर, प्रोजेक्ट पर कर्सर घुमाएं. इसके बाद, वर्कस्पेस पर क्लिक करें
- मेरे फ़ाइल फ़ोल्डर साइड बार में, + नया जोड़ें बटन पर क्लिक करें और एसक्यूएल फ़ाइल चुनें
USE DATABASE codelabs_retl_db;
CREATE SCHEMA codelabs_retl_export;
CREATE TABLE codelabs_retl_export.regional_sales_csv AS
SELECT
n.n_name AS nation_name,
c.c_mktsegment AS market_segment,
YEAR(o.o_orderdate) AS order_year,
o.o_orderpriority AS order_priority,
COUNT(o.o_orderkey) AS total_order_count,
ROUND(SUM(o.o_totalprice), 2) AS total_revenue,
COUNT(DISTINCT c.c_custkey) AS unique_customer_count
FROM SNOWFLAKE_SAMPLE_DATA.TPCH_SF1.orders AS o
INNER JOIN SNOWFLAKE_SAMPLE_DATA.TPCH_SF1.customer AS c
ON o.o_custkey = c.c_custkey
INNER JOIN SNOWFLAKE_SAMPLE_DATA.TPCH_SF1.nation AS n
ON c.c_nationkey = n.n_nationkey
GROUP BY
n.n_name,
c.c_mktsegment,
YEAR(o.o_orderdate),
o.o_orderpriority;
SELECT COUNT(*) FROM regional_sales_csv;
आउटपुट में यह जानकारी होनी चाहिए कि 4375 पंक्तियों को कॉपी किया गया है.
GCS को ऐक्सेस करने के लिए Snowflake को कॉन्फ़िगर करना
Snowflake को GCS बकेट में डेटा लिखने की अनुमति देने के लिए, स्टोरेज इंटिग्रेशन और स्टेज बनाना ज़रूरी है.
- स्टोरेज इंटिग्रेशन: यह एक Snowflake ऑब्जेक्ट है. यह आपके बाहरी क्लाउड स्टोरेज के लिए, जनरेट किया गया सेवा खाता और पुष्टि करने की जानकारी सेव करता है.
- स्टेज: यह एक ऐसा ऑब्जेक्ट होता है जिसका नाम होता है. यह किसी खास बकेट और पाथ को रेफ़रंस करता है. साथ ही, यह पुष्टि करने के लिए स्टोरेज इंटिग्रेशन का इस्तेमाल करता है. यह डेटा लोड करने और अनलोड करने की कार्रवाइयों के लिए, नाम वाली एक सुविधाजनक जगह उपलब्ध कराता है.
सबसे पहले, स्टोरेज इंटिग्रेशन बनाएं.
CREATE OR REPLACE STORAGE INTEGRATION gcs_int
TYPE = EXTERNAL_STAGE
STORAGE_PROVIDER = 'GCS'
ENABLED = TRUE
-- Grant Snowflake permission to write to a specific path in your bucket.
STORAGE_ALLOWED_LOCATIONS = ('gcs://<Your bucket name>/sample_orders');
इसके बाद, इंटिग्रेशन के बारे में बताएं, ताकि Snowflake इसके लिए सेवा खाता बना सके.
DESC STORAGE INTEGRATION gcs_int;
नतीजों में, STORAGE_GCP_SERVICE_ACCOUNT की वैल्यू कॉपी करें. यह ईमेल पते जैसा दिखेगा.
इस सेवा खाते को अपने शेल इंस्टेंस में किसी एनवायरमेंट वैरिएबल में सेव करें, ताकि बाद में इसका फिर से इस्तेमाल किया जा सके
export GCP_SERVICE_ACCOUNT=<Your service account>
Snowflake को GCS की अनुमतियां देना
अब Snowflake सेवा खाते को GCS बकेट में लिखने की अनुमति दी जानी चाहिए.
gcloud storage buckets add-iam-policy-binding gs://$GCS_BUCKET_NAME \
--member="serviceAccount:$GCP_SERVICE_ACCOUNT" \
--role="roles/storage.objectAdmin"
gcloud storage buckets add-iam-policy-binding gs://$GCS_BUCKET_NAME \
--member="serviceAccount:$GCP_SERVICE_ACCOUNT" \
--role="roles/storage.legacyBucketReader"
स्टेज बनाना और डेटा एक्सपोर्ट करना
अनुमतियां सेट हो जाने के बाद, Snowflake की वर्कशीट पर वापस जाएं. इंटिग्रेशन का इस्तेमाल करने वाला एक स्टेज बनाएं. इसके बाद, COPY INTO कमांड का इस्तेमाल करके, SAMPLE_ORDERS टेबल का डेटा उस स्टेज में एक्सपोर्ट करें.
CREATE OR REPLACE STAGE retl_gcs_stage
URL = 'gcs://<Your bucket name>/regional_sales_csv'
STORAGE_INTEGRATION = gcs_int
-- Define the output file format
FILE_FORMAT = (TYPE = 'CSV');
COPY INTO @retl_gcs_stage/regional_sales_csv
FROM (SELECT * FROM codelabs_retl_export.regional_sales_csv)
FILE_FORMAT = (TYPE = CSV, COMPRESSION = NONE);
नतीजे वाले पैनल में, rows_unloaded को 1500000 वैल्यू के साथ दिखना चाहिए.
GCS में डेटा की पुष्टि करना
Snowflake ने जो फ़ाइलें बनाई हैं उन्हें देखने के लिए, GCS बकेट देखें. इससे पुष्टि होती है कि एक्सपोर्ट हो गया है.
gcloud storage ls gs://$GCS_BUCKET_NAME/regional_sales_csv/
एक या उससे ज़्यादा नंबर वाली CSV फ़ाइलें दिखनी चाहिए.
gs://your-bucket-name/regional_sales_csv/regional_sales_csv_0_0_0.csv ...
6. Dataflow की मदद से, Spanner में डेटा लोड करना
डेटा अब GCS में है. इसलिए, Spanner में डेटा इंपोर्ट करने के लिए Dataflow का इस्तेमाल किया जाएगा. Dataflow, Google Cloud की पूरी तरह से मैनेज की जाने वाली सेवा है. इसका इस्तेमाल स्ट्रीम और बैच डेटा प्रोसेसिंग के लिए किया जाता है. पहले से बने Google टेंप्लेट का इस्तेमाल किया जाएगा. इसे खास तौर पर, GCS से Spanner में टेक्स्ट फ़ाइलें इंपोर्ट करने के लिए डिज़ाइन किया गया है.
Spanner टेबल बनाना
सबसे पहले, Spanner में डेस्टिनेशन टेबल बनाएं. स्कीमा, CSV फ़ाइलों में मौजूद डेटा के साथ काम करने वाला होना चाहिए.
gcloud spanner databases ddl update $SPANNER_DB \
--instance=$SPANNER_INSTANCE \
--ddl="$(cat <<EOF
CREATE TABLE regional_sales (
nation_name STRING(MAX),
market_segment STRING(MAX),
order_year INT64,
order_priority STRING(MAX),
total_order_count INT64,
total_revenue NUMERIC,
unique_customer_count INT64
) PRIMARY KEY (nation_name, market_segment, order_year, order_priority);
EOF
)"
डेटाफ़्लो मेनिफ़ेस्ट बनाना
Dataflow टेंप्लेट के लिए, "मेनिफ़ेस्ट" फ़ाइल ज़रूरी होती है. यह एक JSON फ़ाइल है. इससे टेंप्लेट को यह पता चलता है कि सोर्स डेटा फ़ाइलें कहां मिलेंगी और उन्हें किस Spanner टेबल में लोड करना है.
GCS बकेट में नई regional_sales_manifest.json फ़ाइल को तय करें और अपलोड करें:
cat <<EOF | gcloud storage cp - gs://$GCS_BUCKET_NAME/regional_sales_manifest.json
{
"tables": [
{
"table_name": "regional_sales",
"file_patterns": [
"gs://$GCS_BUCKET_NAME/regional_sales_csv/*.csv"
]
}
]
}
EOF
Dataflow API चालू करना
Dataflow का इस्तेमाल करने से पहले, इसे चालू करना ज़रूरी है. ऐसा करने के लिए
gcloud services enable dataflow.googleapis.com --project=$GCP_PROJECT
डेटाफ़्लो जॉब बनाना और उसे चलाना
इंपोर्ट का काम अब शुरू किया जा सकता है. इस कमांड से, GCS_Text_to_Cloud_Spanner टेंप्लेट का इस्तेमाल करके Dataflow जॉब लॉन्च की जाती है.
कमांड लंबी है और इसमें कई पैरामीटर हैं. यहां इसकी जानकारी दी गई है:
| GCS पर पहले से बने टेंप्लेट का पाथ. | |
| वह क्षेत्र जहां Dataflow जॉब चलेगी. | |
| ||
| टारगेट Spanner इंस्टेंस और डेटाबेस. | |
| अभी बनाई गई मेनिफ़ेस्ट फ़ाइल का GCS पाथ. | |
gcloud dataflow jobs run spanner-import-from-gcs \
--gcs-location=gs://dataflow-templates/latest/GCS_Text_to_Cloud_Spanner \
--region=$GCP_REGION \
--staging-location=gs://$GCS_BUCKET_NAME/staging \
--parameters \
instanceId=$SPANNER_INSTANCE,\
databaseId=$SPANNER_DB,\
importManifest=gs://$GCS_BUCKET_NAME/regional_sales_manifest.json,escape='\'
डेटाफ़्लो जॉब का स्टेटस देखने के लिए, इस निर्देश का इस्तेमाल किया जा सकता है
gcloud dataflow jobs list \
--filter="name:spanner-import-from-gcs" \
--region="$GCP_REGION" \
--sort-by="~creationTime" \
--limit=1
इस प्रोसेस को पूरा होने में करीब पांच मिनट लगेंगे.
Spanner में डेटा की पुष्टि करना
डेटाफ़्लो जॉब पूरा होने के बाद, पुष्टि करें कि डेटा को Spanner में लोड कर दिया गया है.
सबसे पहले, पंक्तियों की संख्या देखें. यह 4375 होना चाहिए
gcloud spanner databases execute-sql $SPANNER_DB \
--instance=$SPANNER_INSTANCE \
--sql='SELECT COUNT(*) FROM regional_sales;'
इसके बाद, डेटा की जांच करने के लिए कुछ पंक्तियों को क्वेरी करें.
gcloud spanner databases execute-sql $SPANNER_DB \
--instance=$SPANNER_INSTANCE \
--sql='SELECT * FROM regional_sales LIMIT 5'
Snowflake टेबल से इंपोर्ट किया गया डेटा दिखना चाहिए.
7. मिटाना
Spanner को क्लीन अप करना
Spanner डेटाबेस और इंस्टेंस मिटाना
gcloud spanner instances delete $SPANNER_INSTANCE
GCS (जीसीएस) का स्टोरेज खाली करना
डेटा को होस्ट करने के लिए बनाया गया GCS बकेट मिटाएं
gcloud storage rm --recursive gs://$GCS_BUCKET_NAME
Snowflake को क्लीन अप करना
डेटाबेस को छोड़ें
- बाईं ओर मौजूद मेन्यू में, Horizon कैटलॉग में जाकर, कैटलॉग पर कर्सर घुमाएं. इसके बाद,डेटाबेस एक्सप्लोरर पर कर्सर घुमाएं
- विकल्पों को बड़ा करने के लिए,
CODELABS_RETL_DBडेटाबेस के दाईं ओर मौजूद ... पर क्लिक करें. इसके बाद, ड्रॉप करें को चुनें - पुष्टि करने वाले पॉप-अप डायलॉग बॉक्स में, डेटाबेस हटाएं को चुनें
वर्कबुक मिटाना
- बाईं ओर मौजूद मेन्यू में, डेटा के साथ काम करें में जाकर, प्रोजेक्ट पर कर्सर घुमाएं. इसके बाद, वर्कस्पेस पर क्लिक करें
- मेरा फ़ाइल फ़ोल्डर साइड बार में, इस लैब के लिए इस्तेमाल की गई अलग-अलग फ़ाइल फ़ोल्डर पर कर्सर घुमाएं. इससे ... अतिरिक्त विकल्प दिखेंगे. इन पर क्लिक करें
- मिटाएं को चुनें. इसके बाद, पुष्टि करने वाले डायलॉग में फिर से मिटाएं को चुनें.
- इस लैब के लिए बनाई गई सभी SQL वर्कस्पेस फ़ाइलों के लिए, यह तरीका अपनाएं.
8. बधाई हो
कोडलैब पूरा करने के लिए बधाई.
हमने क्या-क्या कवर किया है
- Snowflake में डेटा लोड करने का तरीका
- GCS बकेट बनाने का तरीका
- Snowflake टेबल को CSV फ़ॉर्मैट में GCS में एक्सपोर्ट करने का तरीका
- स्पैनर इंस्टेंस सेट अप करने का तरीका
- Dataflow की मदद से, CSV टेबल को Spanner में लोड करने का तरीका