Computer >> कंप्यूटर ट्यूटोरियल >  >> प्रोग्रामिंग >> Python

Boto3 का उपयोग करके AWS Glue डेटा कैटलॉग में उपलब्ध सभी कनेक्शन का विवरण कैसे प्राप्त करें?


समस्या विवरण - Python में boto3 लाइब्रेरी का उपयोग करके AWS Glue डेटा कैटलॉग में मौजूद सभी कनेक्शन का विवरण प्राप्त करें।

उदाहरण - सभी कनेक्शन परिभाषा का विवरण प्राप्त करें।

इस समस्या को हल करने का दृष्टिकोण/एल्गोरिदम

चरण 1 - अपवादों को संभालने के लिए boto3 और botocore एक्सेप्शन्स आयात करें।

चरण 2 - कोई पैरामीटर नहीं है।

चरण 3 - boto3 लाइब्रेरी का उपयोग करके AWS सत्र बनाएं। सुनिश्चित करें कि region_name डिफ़ॉल्ट प्रोफ़ाइल में उल्लिखित है। यदि नहीं बताया गया है, तो सत्र बनाते समय region_name को स्पष्ट रूप से पास करें।

चरण 4 - Glue के लिए AWS क्लाइंट बनाएं।

चरण 5 - get_connections फंक्शन को कॉल करें।

चरण 6 - यह AWS Glue डेटा कैटलॉग से कनेक्शन परिभाषा का विवरण प्राप्त करेगा।

चरण 7 - जॉब चेक करते समय यदि कुछ गलत हुआ तो सामान्य अपवाद को संभालें।

उदाहरण

AWS Glue डेटा कैटलॉग में सभी कनेक्शन की परिभाषा प्राप्त करने के लिए निम्न कोड का उपयोग करें -

import boto3 from botocore.exceptions import ClientError def get_details_of_all_connections():     session = boto3.session.Session()     glue_client = session.client('glue')     try:         response = glue_client.get_connections()         return response     except ClientError as e:         raise Exception("boto3 client error in get_details_of_all_connections: " + e.__str__())     except Exception as e:         raise Exception("Unexpected error in get_details_of_all_connections: " + e.__str__()) print(get_details_of_all_connections())

आउटपुट

{'ConnectionList': [ {'Name': '01_Daily', 'Description': '', 'ConnectionType': 'JDBC', 'ConnectionProperties': {'JDBC_CONNECTION_URL': 'jdbc:redshift://**********.us-east-1.redshift.amazonaws.com:5439/abc', 'JDBC_ENFORCE_SSL': 'false', 'PASSWORD': '!*******', 'USERNAME': '********'}, 'PhysicalConnectionRequirements': {'SubnetId': 'subneta******e', 'SecurityGroupIdList': ['sg-********3'], 'AvailabilityZone': 'us-east-1a'}, 'CreationTime': datetime.datetime(2020, 12, 11, 17, 1, 51, 519000, tzinfo=tzlocal()), 'LastUpdatedTime': datetime.datetime(2020, 12, 11, 17, 1, 51, 519000, tzinfo=tzlocal())}, {'Name': 'aurora-poc', 'ConnectionType': 'JDBC', 'ConnectionProperties': {'JDBC_CONNECTION_URL': 'jdbc:postgresql://**********-cluster.clustercv********6p.us-east-1.rds.amazonaws.com:5432/*******', 'JDBC_ENFORCE_SSL': 'false', 'PASSWORD': '******', 'USERNAME': 'user'}, 'PhysicalConnectionRequirements': {'SubnetId': 'subnet-35******e', 'SecurityGroupIdList': ['sg-*******d', 'sg-0***********'], 'AvailabilityZone': 'us-east-1c'}, 'CreationTime': datetime.datetime(2020, 11, 18, 12, 38, 29, 625000, tzinfo=tzlocal()), 'LastUpdatedTime': datetime.datetime(2020, 11, 18, 12, 51, 16, 59000, tzinfo=tzlocal())}, {'Name': 'dev-ods', 'ConnectionType': 'JDBC', 'ConnectionProperties': {'JDBC_CONNECTION_URL': 'jdbc:postgresql://*****************.us-east1.rds.amazonaws.com:5432/store', 'JDBC_ENFORCE_SSL': 'false', 'PASSWORD': '***********', 'USERNAME': 'user'}, 'PhysicalConnectionRequirements': {'SubnetId': 'subnet-a********', 'SecurityGroupIdList': ['sg-*********b7', 'sg-a8********e'], 'AvailabilityZone': 'us-east-1a'}, 'CreationTime': datetime.datetime(2020, 5, 27, 3, 10, 24, 538000, tzinfo=tzlocal()), 'LastUpdatedTime': datetime.datetime(2021, 2, 26, 5, 50, 53, 991000, tzinfo=tzlocal())},], 'ResponseMetadata': {'RequestId': '58bae80d-*******************87', 'HTTPStatusCode': 200, 'HTTPHeaders': {'date': 'Sun, 28 Feb 2021 11:21:55 GMT', 'content-type': 'application/x-amz-json-1.1', 'contentlength': '11568', 'connection': 'keep-alive', 'x-amzn-requestid': '58bae80d-************************87'}, 'RetryAttempts': 0}}

  1. - Boto3 का उपयोग करके AWS Glue डेटा कैटलॉग से कनेक्शन का विवरण कैसे प्राप्त करें?

    समस्या विवरण - Python में boto3 लाइब्रेरी का उपयोग करके AWS Glue डेटा कैटलॉग में मौजूद कनेक्शन का विवरण प्राप्त करें।उदाहरण - कनेक्शन परिभाषा, aurora-test का विवरण प्राप्त करें।इस समस्या को हल करने का दृष्टिकोण/एल्गोरिदमचरण 1 - अपवादों को संभालने के लिए boto3 और botocore एक्सेप्शन्स आयात करें।चरण 2

  1. - Boto3 का उपयोग करके AWS Glue डेटा कैटलॉग में उपलब्ध सभी क्लासिफायर का विवरण कैसे प्राप्त करें?

    समस्या विवरण: Python में boto3 लाइब्रेरी का उपयोग करके AWS Glue डेटा कैटलॉग में मौजूद सभी क्लासिफायर का विवरण प्राप्त करें। उदाहरण के लिए, यूज़र के अकाउंट से सभी क्लासिफायर का विवरण प्राप्त करें।इस समस्या को हल करने का दृष्टिकोण/एल्गोरिदमचरण 1 - अपवादों को संभालने के लिए boto3 और botocore एक्सेप्शन्

  1. - Boto3 का उपयोग करके AWS Glue डेटा कैटलॉग से क्लासिफायर का विवरण कैसे प्राप्त करें?

    समस्या विवरण - Python में boto3 लाइब्रेरी का उपयोग करके AWS Glue डेटा कैटलॉग से क्लासिफायर का विवरण प्राप्त करें। उदाहरण के लिए, क्लासिफायर xml-test का विवरण प्राप्त करें।इस समस्या को हल करने का दृष्टिकोण/एल्गोरिदमचरण 1 - अपवादों को संभालने के लिए boto3 और botocore एक्सेप्शन्स आयात करें।चरण 2 - पैरा