Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีใช้ Boto3 เพื่อเริ่มเวิร์กโฟลว์ใน AWS Glue Data Catalog


ในบทความนี้ เราจะมาดูกันว่าผู้ใช้สามารถเริ่มเวิร์กโฟลว์ใน AWS Glue Data Catlog ได้อย่างไร

ตัวอย่าง

คำชี้แจงปัญหา: ใช้ boto3 ไลบรารีใน Python เพื่อเริ่มเวิร์กโฟลว์

แนวทาง/อัลกอริทึมในการแก้ปัญหานี้

  • ขั้นตอนที่ 1: นำเข้า boto3 และ botcore ข้อยกเว้นในการจัดการข้อยกเว้น

  • ขั้นตอนที่ 2: ชื่อเวิร์กโฟลว์ เป็นพารามิเตอร์ในฟังก์ชันนี้

  • ขั้นตอนที่ 3: สร้างเซสชัน AWS โดยใช้ boto3 lib . ตรวจสอบให้แน่ใจว่า region_name ถูกกล่าวถึงในโปรไฟล์เริ่มต้น หากไม่กล่าวถึง ให้ส่ง region_name . อย่างชัดแจ้ง ขณะสร้างเซสชัน

  • ขั้นตอนที่ 4: สร้างไคลเอ็นต์ AWS สำหรับ กาว .

  • ขั้นตอนที่ 5: ตอนนี้ใช้ start_workflow_run และส่งผ่านพารามิเตอร์ workflow_name ตามชื่อ

  • ขั้นตอนที่ 6: ส่งคืน RunId และข้อมูลเมตาของการตอบสนองและเริ่มเวิร์กโฟลว์

  • ขั้นตอนที่ 7: จัดการกับข้อยกเว้นทั่วไปหากมีข้อผิดพลาดขณะเริ่มเวิร์กโฟลว์

โค้ดตัวอย่าง

รหัสต่อไปนี้เริ่มเวิร์กโฟลว์ -

นำเข้า boto3 จาก botocore.exceptions นำเข้า ClientErrordef start_a_workflow(workflow_name) session =boto3.session.Session() glue_client =session.client('glue') ลอง:response =glue_client.start_workflow_run (Name=workflow_name) ส่งคืนการตอบกลับ ยกเว้น ClientError เป็น e:ยกข้อยกเว้น ("ข้อผิดพลาดของไคลเอ็นต์ boto3 ใน start_a_workflow:" + e.__str__()) ยกเว้นข้อยกเว้นเป็น e:ยกข้อยกเว้น ("ข้อผิดพลาดที่ไม่คาดคิดใน start_a_workflow:" + e.__str__()) พิมพ์ (start_a_workflow("test-daily "))

ผลลัพธ์

<ก่อนหน้า>{'RunId':'wr_64e880240692fddd5e1b19aed587f856bc20a96f54bc', 'ResponseMetadata':{'RequestId':'782e953b-8ee3-4876-9b2c-cd35e147b513', 'HTTP 200 สถานะ':รหัส , 28 มี.ค. 2021 08:11:02 GMT', 'content-type':'application/x-amz-json-1.1', 'content-length':'79', 'connection':'keep-alive', 'x-amzn-requestid':'782e953b-**********************************13'} 'ลองอีกครั้ง' :0}}