যখন একজন ব্যবহারকারী AWS ডেটা ক্যাটালগ থেকে একটি ওয়ার্কফ্লো মুছে ফেলতে চায়।
উদাহরণ - আপনার অ্যাকাউন্ট থেকে একটি ওয়ার্কফ্লো 'পরীক্ষা' মুছুন।
সমস্যা বিবৃতি − আপনার অ্যাকাউন্টে উপলব্ধ একটি ওয়ার্কফ্লো মুছে ফেলতে পাইথনে boto3 লাইব্রেরি ব্যবহার করুন৷
এই সমস্যা সমাধানের জন্য অ্যাপ্রোচ/অ্যালগরিদম
ধাপ 1 − ব্যতিক্রমগুলি পরিচালনা করতে boto3 এবং botocore ব্যতিক্রমগুলি আমদানি করুন৷
৷ধাপ 2 − প্যারামিটার ওয়ার্কফ্লো_নামটি পাস করুন যা AWS গ্লু ক্যাটালগ থেকে মুছে ফেলা উচিত।
ধাপ 3 - boto3 লাইব্রেরি ব্যবহার করে একটি AWS সেশন তৈরি করুন। নিশ্চিত করুন যে অঞ্চল_নাম ডিফল্ট প্রোফাইলে উল্লেখ আছে। যদি এটি উল্লেখ না থাকে, তাহলে সেশন তৈরি করার সময় স্পষ্টভাবে অঞ্চল_নামটি পাস করুন।
পদক্ষেপ 4৷ − আঠার জন্য একটি AWS ক্লায়েন্ট তৈরি করুন৷
৷ধাপ 5 − delete_workflow কে কল করুন এবং workflow_name কে Name প্যারামিটার হিসাবে পাস করুন।
ধাপ 6 - এটি কর্মপ্রবাহ মুছে ফেলবে এবং প্রতিক্রিয়া মেটাডেটা ফিরিয়ে দেবে। অনুগ্রহ করে মনে রাখবেন, যদি AWS ডেটা ক্যাটালগে ওয়ার্কফ্লো না পাওয়া যায় তবে এটি কোনো ব্যতিক্রম ঘটায় না।
পদক্ষেপ 7 − কাজ চেক করার সময় কিছু ভুল হলে জেনেরিক ব্যতিক্রম হ্যান্ডেল করুন।
উদাহরণ
ব্যবহারকারীর অ্যাকাউন্টে তালিকাভুক্ত একটি ওয়ার্কফ্লো মুছে ফেলতে নিম্নলিখিত কোডটি ব্যবহার করুন -
import boto3 from botocore.exceptions import ClientError def delete_a_workflow(workflow_name): session = boto3.session.Session() glue_client = session.client('glue') try: response = glue_client.delete_workflow(Name = workflow_name) return response except ClientError as e: raise Exception( "boto3 client error in delete_a_workflow: " + e.__str__()) except Exception as e: raise Exception("Unexpected error in delete_a_workflow: " + e.__str__()) print(delete_a_workflow("test"))
আউটপুট
{'Name': 'test, 'ResponseMetadata': {'RequestId': '………..-………………….- 59a9bc817e0f', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Sun, 21 Feb 2021 05:37:11 GMT', 'content-type': 'application/x-amz-json-1.1', 'content-length': '35', 'connection': 'keep-alive', 'x-amzn-requestid': …………………….-59a9bc817e0f'}, 'RetryAttempts': 0}}