সমস্যা বিবৃতি − আপনার অ্যাকাউন্টে তৈরি একটি আঠালো কাজ মুছে ফেলতে পাইথনে boto3 লাইব্রেরি ব্যবহার করুন৷
উদাহরণ − আপনার অ্যাকাউন্টে তৈরি করা একটি আঠালো কাজ ‘transfer_from_s3’ মুছুন৷
এই সমস্যা সমাধানের জন্য অ্যাপ্রোচ/অ্যালগরিদম
ধাপ 1 − ব্যতিক্রমগুলি পরিচালনা করতে boto3 এবং botocore ব্যতিক্রমগুলি আমদানি করুন৷
৷ধাপ 2 − প্যারামিটারটি পাস করুন job_name যেটি AWS Glue Catalog থেকে মুছে ফেলা উচিত।
ধাপ 3 - boto3 লাইব্রেরি ব্যবহার করে একটি AWS সেশন তৈরি করুন। নিশ্চিত করুন যে অঞ্চল_নাম ডিফল্ট প্রোফাইলে উল্লেখ আছে। যদি এটি উল্লেখ না থাকে, তাহলে সেশন তৈরি করার সময় স্পষ্টভাবে অঞ্চল_নামটি পাস করুন।
পদক্ষেপ 4৷ − আঠার জন্য একটি AWS ক্লায়েন্ট তৈরি করুন৷
৷ধাপ 5 − এখন delete_job ফাংশন ব্যবহার করুন এবং JobName প্যারামিটার হিসাবে job_name পাস করুন।
ধাপ 6 - এটি কাজটি মুছে ফেলবে এবং প্রতিক্রিয়া মেটাডেটা ফিরিয়ে দেবে৷
৷পদক্ষেপ 7 − কাজ চেক করার সময় কিছু ভুল হলে জেনেরিক ব্যতিক্রম হ্যান্ডেল করুন।
দ্রষ্টব্য − এই ক্রিয়াকলাপটি শেষ হওয়ার পরে, এটি একটি নির্দিষ্ট কাজের সংজ্ঞা মুছে দেয়। যদি AWS Glue-এ কাজ না পাওয়া যায়, তাহলে এটি কোনো ব্যতিক্রম নিক্ষেপ করে না এবং আউটপুট একই রকম হয় যদি এটি কোনো মুছে দেয়।
উদাহরণ
AWS Glue থেকে একটি আঠালো কাজ মুছতে নিম্নলিখিত কোডটি ব্যবহার করুন:
import boto3
from botocore.exceptions import ClientError
def delete_a_glue_job(job_name):
session = boto3.session.Session()
glue_client = session.client('glue')
try:
response = glue_client.delelte_job(JobName=job_name)
return response
except ClientError as e:
raise Exception( "boto3 client error in delete_a_glue_job: " + e.__str__())
except Exception as e:
raise Exception( "Unexpected error in delete_a_glue_job: " + e.__str__())
print(delete_a_glue_job("transfer_from_s3")) আউটপুট
{'JobName': ' transfer_from_s3', 'ResponseMetadata': {'RequestId':
'126adb54-f0a0-4558-b345-d6a4e62674f3', 'HTTPStatusCode': 200,
'HTTPHeaders': {'date': 'Sat, 27 Feb 2021 15:53:27 GMT', 'content-type':
'application/x-amz-json-1.1', 'content-length': '22', 'connection':
'keep-alive', 'x-amzn-requestid': '126adb54-……….-d6a4e62674f3'},
'RetryAttempts': 0}}