作业完成后,有没有办法 运行 aws glue crawler?

Is there a way to run aws glue crawler after job is finished?

例如,我 运行 可以为目标 table 添加 ETL 和新字段或列。要检测 table 变化,爬虫应该 运行 但它只有手动或时间表 运行。

作业完成后可以触发爬虫吗?

import boto3
glue_client = boto3.client('glue', region_name='us-east-1')
glue_client.start_crawler(Name='name_of_crawler')

在您的代码末尾复制此代码段。

你可以,使用触发器,但不能在触发器中 UI :S

使用 Glue Workflow:添加触发器以启动作业,添加作业,为作业成功添加触发器,为触发的内容添加爬虫

或者,使用 CLI:

aws glue create-trigger --name myJob-success \
    --type CONDITIONAL \
    --predicate '{"Logical":"ANY","Conditions":[{"JobName":"myJob","LogicalOperator":"EQUALS","State":"SUCCEEDED"}]}' \
    --actions CrawlerName=myCrawler \
    --start-on-creation

或在 CloudFormation 中:

Type: AWS::Glue::Trigger
Properties: 
  Name: job_success
  Type: CONDITIONAL
  Predicate: 
    Logical: ANY
    Conditions:
      - JobName: myJob
        LogicalOperator: EQUALS
        State: SUCCEEDED
  Actions: 
    - CrawlerName:myCrawler