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

Boto3 ব্যবহার করে AWS Glue ডেটা ক্যাটালগে ওয়ার্কফ্লো শুরু করা


ভূমিকা

AWS Glue ওয়ার্কফ্লো শুরু করার জন্য start_workflow_run API ব্যবহার করা হয়। এটি একটি নতুন রান তৈরি করে এবং RunId রিটার্ন করে, যা পরবর্তীতে ওয়ার্কফ্লো মনিটর বা বন্ধ করতে ব্যবহার করা হয়।

সমস্যা বিবরণ

পাইথনে boto3 লাইব্রেরি ব্যবহার করে একটি ওয়ার্কফ্লো শুরু করা।

অ্যালগরিদম / ধাপসমূহ

  1. boto3 এবং botocore.exceptions ইম্পোর্ট করুন।
  2. ফাংশনটি workflow_name প্যারামিটার নেবে।
  3. AWS সেশন এবং Glue ক্লায়েন্ট তৈরি করুন।
  4. glue_client.start_workflow_run(Name=workflow_name) কল করুন।
  5. রেসপন্সে RunId এবং মেটাডেটা থাকবে।
  6. এক্সেপশন হ্যান্ডল করুন।

উদাহরণ কোড

import boto3
from botocore.exceptions import ClientError

def start_a_workflow(workflow_name):
    session = boto3.session.Session()
    glue_client = session.client('glue')
    try:
        response = glue_client.start_workflow_run(Name=workflow_name)
        return response
    except ClientError as e:
        raise Exception("boto3 client error in start_a_workflow: " + e.__str__())
    except Exception as e:
        raise Exception("Unexpected error in start_a_workflow: " + e.__str__())

print(start_a_workflow("test-daily"))

আউটপুট

{'RunId': 'wr_64e880240692fddd5e1b19aed587f856bc20a96f54bc', 'ResponseMetadata': {'RequestId': '782e953b-8ee3-4876-9b2c-cd35e147b513', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Sun, 28 Mar 2021 08:11:02 GMT', 'content-type': 'application/x-amz-json-1.1', 'content-length': '79', 'connection': 'keep-alive', 'x-amzn-requestid': '782e953b-********************************13'}, 'RetryAttempts': 0}}

ব্যাখ্যা

  • RunId হলো এই নির্দিষ্ট ওয়ার্কফ্লো রানের ইউনিক আইডেন্টিফায়ার।

  • এই RunId ব্যবহার করে আপনি get_workflow_run, stop_workflow_run, বা get_workflow_run_properties কল করতে পারেন।

  • যদি ওয়ার্কফ্লো ইতিমধ্যে রানিং থাকে, তবে নতুন রান তৈরি হবে (কনকারেন্ট রান সাপোর্ট করা থাকলে)।


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

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

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

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