AWS Glue-Boto3搜寻器未创建表

时间:2019-06-07 15:12:49

标签: amazon-web-services aws-sdk aws-glue glue aws-glue-data-catalog

我正在尝试通过boto3库创建并运行一个AWS胶搜寻器。搜寻器针对s3文件夹中的JSON文件。搜寻器成功完成,当我检查日志时没有错误,但未在我的胶水数据库中创建任何表

这不是权限问题,因为我能够通过CFT创建相同的搜寻器,并且在运行时它会按预期创建表。我在代码中使用与CFT相同的角色,并与boto3一起运行以创建它。

尝试使用boto3 create_crawler()和run_crawler()。在从CFT创建的搜寻器上使用boto3 update_crawler()进行了尝试,并更新了s3目标路径。

 response = glue.create_crawler(
        Name='my-crawler',
        Role='my-role-arn',
        DatabaseName='glue_database',
        Description='Crawler for generating table from s3 target',
        Targets={
            'S3Targets': [
                {
                    'Path': s3_target
                }
            ]
        },
        SchemaChangePolicy={
            'UpdateBehavior': 'UPDATE_IN_DATABASE',
            'DeleteBehavior': 'LOG'
        },
        TablePrefix=''
    )

1 个答案:

答案 0 :(得分:0)

您确定已在胶客户程序中传递了正确的区域(胶对象创建)。

一旦我复制代码并忘记更改区域,就花了几个小时弄清楚为什么在没有错误的情况下不创建表。最终,我弄清楚了该表是在另一个区域中创建的,因为我在将代码复制到新区域时忘记更改区域。