কম্পিউটার টিউটোরিয়াল

Boto3 ব্যবহার করে AWS Glue Data Catalog থেকে একটি টেবিলের নির্দিষ্ট ভার্সন ডিলিট করা


সমস্যা বিবরণ − Python-এ boto3 লাইব্রেরি ব্যবহার করে আপনার অ্যাকাউন্টে তৈরি একটি টেবিলের নির্দিষ্ট ভার্সন ডিলিট করা।

উদাহরণ − আপনার অ্যাকাউন্টে তৈরি 'test' ডেটাবেস থেকে 'security' টেবিলের ভার্সন ১ ডিলিট করা।

সমাধানের পদ্ধতি/অ্যালগরিদম

ধাপ ১ − boto3 এবং botocore এক্সসেপশন ইম্পোর্ট করে এক্সসেপশন হ্যান্ডল করা।

ধাপ ২ − database_name, table_name এবং version_id প্যারামিটার পাস করা যা AWS Glue Catalog থেকে ডিলিট করা উচিত।

ধাপ ৩ − boto3 লাইব্রেরি ব্যবহার করে AWS সেশন তৈরি করা। নিশ্চিত করুন region_name ডিফল্ট প্রোফাইলে ذکر করা আছে। না থাকলে সেশন তৈরি করার সময় স্পষ্টভাবে region_name পাস করুন।

ধাপ ৪ − Glue-এর জন্য AWS ক্লায়েন্ট তৈরি করা।

ধাপ ৫ − এখন delete_table_version ফাংশন ব্যবহার করুন এবং database_name কে DatabaseName প্যারামিটার, table_name কে TableName প্যারামিটার এবং version_id কে VersionId প্যারামিটার হিসেবে পাস করুন। মনে রাখবেন, VersionId স্ট্রিং তাই এটি উল্টো কোমায় পাস করতে হবে এবং ইউজার টেবিলের লেটেস্ট ভার্সন ডিলিট করতে পারবে না। টেবিলের পুরনো ভার্সন মাত্র ডিলিট করা সম্ভব। যদি ইউজার লেটেস্ট ভার্সন ডিলিট করতে চায় তবে delete_table ফাংশন ব্যবহার করতে হবে।

ধাপ ৬  এটি টেবিলের পুরনো নির্দিষ্ট ভার্সন ডিলিট করবে এবং রেসপন্স মেটাডেটা রিটার্ন করবে।

ধাপ ৭ − জব চেক করার সময় যদি কিছু ভুল হয় তবে জেনেরিক এক্সসেপশন হ্যান্ডল করা।

উদাহরণ

AWS Glue ডেটাবেস থেকে একটি টেবিলের নির্দিষ্ট ভার্সন ডিলিট করতে নিচের কোড ব্যবহার করুন −

import boto3 from botocore.exceptions import ClientError def delete_a_table_version_from_database(database_name, table_name, version_id:str):     session = boto3.session.Session()     glue_client = session.client('glue')     try:         response = glue_client.delete_table_version(DatabaseName=database_name, Name=table_name, VersionId=version_id)         return response     except ClientError as e:         raise Exception("boto3 client error in delete_a_table_version_from_database: " + e.__str__())     except Exception as e:         raise Exception("Unexpected error in delete_a_table_version_from_database: " + e.__str__()) print(delete_a_table_version_from_database("test","security","1"))

আউটপুট

{'ResponseMetadata': {'RequestId': '7aa7c3cb...........-8610318a238c', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Sun, 21 Feb 2021 04:58:04 GMT', 'content-type': 'application/x-amz-json-1.1', 'contentlength': '2', 'connection': 'keep-alive', 'x-amzn-requestid': '7aa7c3cbf611-494e-b923-8610318a238c'}, 'RetryAttempts': 0}}

  1. Boto3 ব্যবহার করে AWS Glue Data Catalog থেকে একটি টেবিল ডিলিট করা

  2. Boto3 ব্যবহার করে AWS Glue থেকে একটি Glue Job ডিলিট করা

  3. Boto3 ব্যবহার করে AWS Data Catalog থেকে একটি ডেটাবেস ডিলিট করা

  4. Boto3 ব্যবহার করে AWS Glue Data Catalog থেকে একটি ক্রলার ডিলিট করা