Python
 Computer >> コンピューター >  >> プログラミング >> Python

Boto3を使ってAWS Glueデータカタログからトリガーを削除する方法

概要

この記事では、Pythonのboto3ライブラリを使用して、AWSアカウント内に存在するトリガー(Trigger)を削除する方法を解説します。

課題 − Pythonのboto3ライブラリを使って、自分のアカウントにあるトリガーを削除します。

− アカウントから「test」という名前のトリガーを削除します。

解決のための手順(アプローチ/アルゴリズム)

ステップ1 − 例外処理のためにboto3およびbotocoreの例外モジュールをインポートします。

ステップ2 − AWS Glueカタログから削除したいトリガーの名前(trigger_name)をパラメータとして渡します。

ステップ3 − boto3ライブラリを使用してAWSセッションを作成します。デフォルトプロファイルにregion_nameが設定されていることを確認してください。設定されていない場合は、セッション作成時にregion_nameを明示的に指定する必要があります。

ステップ4 − Glue用のAWSクライアントを作成します。

ステップ5 − delete_trigger関数を呼び出し、Nameパラメータとしてトリガー名を渡します。

ステップ6 − トリガーが削除されると、レスポンスメタデータが返されます。なお、AWS Data Catalogに対象のトリガーが存在しない場合でも、例外はスローされない点に注意してください。

ステップ7 − 処理中に予期しない問題が発生した場合に備えて、汎用的な例外ハンドリングを行います。

サンプルコード

以下のコードを使用すると、ユーザーアカウントに登録されているトリガーを削除できます。

import boto3
from botocore.exceptions import ClientError

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

print(delete_a_trigger("test"))

実行結果

{'Name': 'test', 'ResponseMetadata': {'RequestId': '75abe5e2-………………-
59a9bc617e0f', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Sun, 21
Feb 2021 05:27:11 GMT', 'content-type': 'application/x-amz-json-1.1',
'content-length': '35', 'connection': 'keep-alive', 'x-amzn-requestid':
'75abe5e2-………………59a9bc617e0f'}, 'RetryAttempts': 0}}

まとめ

boto3のdelete_trigger APIを使えば、わずか数行のコードでAWS Glueカタログ上のトリガーを簡単に削除できます。HTTPStatusCodeが200で返ってくれば、削除は正常に完了しています。運用自動化やクリーンアップ処理などにぜひ活用してください。

  1. Boto3を使ってAWS Glueデータカタログからデータベースを削除する方法

    課題Pythonのboto3ライブラリを使用して、自分のAWSアカウント内に作成されたデータベースを削除します。例 − アカウントに作成された「Portfolio」というデータベースを削除します。解決のためのアプローチとアルゴリズムステップ1 − 例外をハンドリングするために、boto3とbotocoreの例外モジュールをインポートします。ステップ2 − AWS Glue Catalogから削除したいデータベース名を database_name パラメータとして渡します。ステップ3 − boto3ライブラリを使ってAWSセッションを作成します。デフォルトプロファイルに region_name

  2. Boto3を使ってAWS Glueデータカタログからクローラーを削除する方法

    本記事では、Pythonのboto3ライブラリを使用して、AWSアカウント内に作成されたGlueクローラーを削除する手順を解説します。AWS Glueのクローラーは、S3などのデータソースをスキャンしてデータカタログにテーブル定義を作成する重要なコンポーネントですが、不要になったクローラーは適切に削除することでリソースを整理できます。 課題 − Pythonのboto3ライブラリを使って、自分のアカウントに作成されたクローラーを削除する。 例 − アカウントに作成された「Portfolio」という名前のクローラーを削除する。 問題解決のアプローチとアルゴリズム ステップ1 − 例外処理のため