Dùng boto3 gọi reset_job_bookmark để đặt lại bookmark của job (dùng cho incremental processing). Trả về thông tin bookmark entry.
Quy trình
- Import boto3, ClientError.
- Hàm nhận
job_name. - Tạo session, client Glue.
- Gọi
glue_client.reset_job_bookmark(JobName=...). - Trả về dictionary chứa JobBookmarkEntry.
- Xử lý ngoại lệ.
Code mẫu
import boto3
from botocore.exceptions import ClientError
def reset_bookmark_job(job_name):
session = boto3.session.Session()
glue_client = session.client('glue')
try:
response = glue_client.reset_job_bookmark(JobName=job_name)
return response
except ClientError as e:
raise Exception("Lỗi boto3 client: " + str(e))
except Exception as e:
raise Exception("Lỗi không mong đợi: " + str(e))
print(reset_bookmark_job("test_job"))
Kết quả
{'JobBookmarkEntry': {'JobName': 'test-job', 'Version': 3, 'Run': 3, 'Attempt': 0, 'JobBookmark': ''}, 'ResponseMetadata': {'RequestId': '03d40d90-...', 'HTTPStatusCode': 200, ...}}