কম্পিউটার

একবারে সমস্ত আঠালো কাজের সংজ্ঞা পেতে Boto3 কীভাবে ব্যবহার করবেন?


সমস্যা বিবৃতি − ব্যবহারকারীর AWS গ্লু ডেটা ক্যাটালগে উপস্থিত সমস্ত গ্লু কাজের সংজ্ঞা পেতে পাইথনে boto3 লাইব্রেরি ব্যবহার করুন৷

উদাহরণ − AWS গ্লু ডেটা ক্যাটালগে উপস্থিত সমস্ত আঠালো কাজের সংজ্ঞা পান৷

এই সমস্যা সমাধানের জন্য অ্যাপ্রোচ/অ্যালগরিদম

ধাপ 1 − ব্যতিক্রমগুলি পরিচালনা করতে boto3 এবং botocore ব্যতিক্রমগুলি আমদানি করুন৷

ধাপ 2 - এই ফাংশনের জন্য কোন প্যারামিটারের প্রয়োজন নেই। এটি ব্যবহারকারীর অ্যাকাউন্টের জন্য সমস্ত তালিকাভুক্ত কাজের সংজ্ঞা আনবে।

ধাপ 3 - boto3 লাইব্রেরি ব্যবহার করে একটি AWS সেশন তৈরি করুন। অঞ্চলের_নাম নিশ্চিত করুন ডিফল্ট প্রোফাইলে উল্লেখ করা আছে। যদি এটি উল্লেখ না থাকে, তাহলে স্পষ্টভাবে অঞ্চল_নাম পাস করুন সেশন তৈরি করার সময়।

পদক্ষেপ 4৷ − আঠার জন্য একটি AWS ক্লায়েন্ট তৈরি করুন৷

ধাপ 5 - এখন ব্যবহারকারীর অ্যাকাউন্টে তালিকাভুক্ত সমস্ত কাজের সংজ্ঞা পেতে get_jobs ফাংশন ব্যবহার করুন। মনে রাখবেন যে তালিকা_চাকরীর মধ্যে একটি পার্থক্য আছে এবং চাকরি পান . তালিকা_চাকরি get_jobs করার সময় শুধুমাত্র AWS Glue Data ক্যাটালগে উপস্থিত গ্লু জবগুলির নাম নিয়ে আসে প্রতিটি কাজের সংজ্ঞা পুনরুদ্ধার করে।

ধাপ 6 − এটি প্রতিটি কাজের সংজ্ঞা প্রদান করে।

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

উদাহরণ

ব্যবহারকারীর অ্যাকাউন্টে তালিকাভুক্ত প্রতিটি কাজের সংজ্ঞা আনতে নিম্নলিখিত কোডটি ব্যবহার করুন −

 boto3from botocore.exceptions import ClientErrordef get_definition_of_glue_jobs():session =boto3.session.Session() glue_client =session.client('glue') চেষ্টা করুন:response =glue_client.get_jobs() ক্লায়েন্ট হিসেবে রিটার্ন করুন বা রেসপন্স ছাড়া ব্যতিক্রম("get_definition_of_glue_jobs-এ boto3 ক্লায়েন্ট ত্রুটি:" + e.__str__()) ব্যতিক্রম ছাড়া e:raise Exception("get_definition_of_glue_jobs-এ অপ্রত্যাশিত ত্রুটি:" + e.__str__())print(get_definition_of_bs(glue_jobs) 

আউটপুট

{'চাকরি':[{'নাম':'01_PythonShellTest1', 'ভূমিকা':'arn:aws:iam::********:role/devedl-glue-role', 'CreatedOn' ':datetime.datetime(2021, 1, 6, 19, 59, 19,387000, tzinfo=tzlocal()), 'LastModifiedOn':datetime.datetime(2021, 2, 9,21, 47, 31, 614000, =tzlocal()), 'ExecutionProperty':{'MaxConcurrentRuns':1}, 'Command':{'Name':'pythonshell', 'ScriptLocation':'s3://ivz-dev-ds-staging-/01_pythonShellTest /test1/01_PythonShellTest1.py', 'PythonVersion':'3'}, 'DefaultArguments':{'--job-bookmark-option':'job-bookmark-disable', '--job-language':'python' '}, 'MaxRetries':0, 'AllocatedCapacity':0, 'Timeout':2880, 'MaxCapacity':0.0625, 'GlueVersion':'1.0'},{'Name':'01_pythonSHELL_1401202:':'Role arn:aws:iam::*********:role/dev-edl-glue-role', 'CreatedOn':datetime.datetime(2021, 1, 14, 20, 22, 40, 965000, tzinfo=tzlocal()),'LastModifiedOn':datetime.datetime(2021, 1, 14, 20, 22, 40, 965000,tzinfo=tzlocal()), 'ExecutionProperty':{'MaxConcurrentRuns':1}, ':{'নাম':'পাইথন hell', 'ScriptLocation':'s3://ivz-dev-dsstaging-work/ /test_14012021/01_pythonSHELL_14012021_123.py', 'PythonVersion':'3'}, 'DefaultArguments':{'--markb ':'jobbookmark-disable'}, 'MaxRetries':0, 'AllocatedCapacity':0, 'Timeout':2880, 'MaxCapacity':0.0625, 'GlueVersion':'1.0'},{'Name':'GlueConnectionTest' , 'ভূমিকা':'arn:aws:iam::*********:role/devedl-qa-automation-glue-role', 'CreatedOn':datetime.datetime(2020, 3, 6, 16, 27, 3, 862000, tzinfo=tzlocal()), 'LastModifiedOn':datetime.datetime(2020, 3, 6, 16, 49, 19, 942000, tzinfo=tzlocal()), 'Execution:' {Properation:' MaxConcurrentRuns':1}, 'Command':{'Name':'pythonshell', 'ScriptLocation':'s3://glue-job-connection-testbucket/test.py', 'PythonVersion':'3'}, 'ডিফল্ট আর্গুমেন্টস':{'--jobbookmark-option':'job-bookmark-disable', '--job-language':'python'}, 'Connections':{'Connections':['dev-edl-redshift' -glue-connection', 'devedl-rds-glue-connection']}, 'MaxRetries':0, 'Allocated Capacity':0, 'Timeout':2880, 'MaxCapacity':0,0625, 'GlueVersion':'1.0'}] NextToken ':' eyJleHBpcmF0aW9uIjp7InNlY29uZHMiOjE2MTQ2NjI2MTAsIm5hbm9zIjo2MjEwMDAwMDB9LCJsYXN0RXZhbHVhdGVkS2V5Ijp7ImpvYk5hbWUiOnsicyI6InRpY2stZGF0YS10ZXN0In0sImFjY291bnRJZCI6eyJzIjoiNzgyMjU4NDg1ODQxIn0sImpvYklkIjp7InMiOiJqXzhmZDc2MzhkYTcyMGQ5Yzk1YTg4MTlkOTgxNTE5MDdjM2JmYWI3ZGYxNGUwNGExZGM0ZTIzZjViYjczM2M2ZTYifX19 ',' ResponseMetadata ':{' RequestId ':' 287ad828 - ******************* *******af', 'HTTPSstatusCode':200, 'HTTPHeaders':{'date':'Mon, 01 মার্চ 2021 05:23:30 GMT', 'content-type':'application/xamz- json-1.1', 'content-length':'8258', 'connection':'keep-alive', 'xamzn-requestid':'287ad828-**************** *af'}, 'RetryAttempts':0}}

  1. আপনার অ্যাকাউন্টে তৈরি ওয়ার্কফ্লো পেতে Boto3 কীভাবে ব্যবহার করবেন?

  2. একবারে একাধিক ট্রিগারের বিশদ পেতে Boto3 কীভাবে ব্যবহার করবেন?

  3. একবারে একাধিক আঠালো কাজের বিবরণ পেতে Boto3 কীভাবে ব্যবহার করবেন?

  4. চলমান আঠালো কাজের স্থিতি পরীক্ষা করতে Boto3 কীভাবে ব্যবহার করবেন?