选择您的 Cookie 首选项

我们使用必要 Cookie 和类似工具提供我们的网站和服务。我们使用性能 Cookie 收集匿名统计数据,以便我们可以了解客户如何使用我们的网站并进行改进。必要 Cookie 无法停用,但您可以单击“自定义”或“拒绝”来拒绝性能 Cookie。

如果您同意,AWS 和经批准的第三方还将使用 Cookie 提供有用的网站功能、记住您的首选项并显示相关内容,包括相关广告。要接受或拒绝所有非必要 Cookie,请单击“接受”或“拒绝”。要做出更详细的选择,请单击“自定义”。

指定允许爬网程序创建的最大表数

聚焦模式
指定允许爬网程序创建的最大表数 - AWS Glue

您可以选择指定允许爬网程序创建的最大表数,方法是通过 AWS Glue 控制台或 AWS CLI 指定 TableThreshold。如果爬网程序在其爬取过程中检测到的表数大于此输入值,则爬取失败且不会向 Data Catalog 写入任何数据。

当爬网程序检测和创建的表数比预期表数要大得多时,此参数非常有用。这可能有多种原因,例如:

  • 使用 AWS Glue 作业填充 Amazon S3 位置时,您最终可能会得到与文件夹相同级别的空文件。在这种情况下,当您在此 Amazon S3 位置运行爬网程序时,由于文件和文件夹位于同一级别,爬网程序会创建多个表。

  • 如果没有配置 "TableGroupingPolicy": "CombineCompatibleSchemas",您最终得到的表数可能比预期数量多。

您可以将 TableThreshold 指定为一个大于 0 的整数值。该值根据每个爬网程序进行配置。也就是说,每次爬取都会考虑该值。例如:爬网程序的 TableThreshold 值设置为 5。每次爬取时,AWS Glue 会将检测到的表数与此表阈值(5)进行比较。如果检测到的表数小于 5,AWS Glue 将表写入 Data Catalog;否则,爬取失败,将不会写入 Data Catalog。

AWS Management Console
使用 AWS Management Console 设置 TableThreshold
  1. 登录 AWS Management Console,然后打开 AWS Glue 控制台,网址为:https://console.aws.amazon.com/glue/

  2. 配置爬网程序时,在输出和计划中,将最大表阈值设置为爬网程序允许生成的表数。

    AWS 控制台的“Output and scheduling”(输出和计划)部分显示最大表阈值参数。
AWS CLI

使用 AWS CLI 设置 TableThreshold

aws glue update-crawler \ --name myCrawler \ --configuration '{"Version": 1.0, "CrawlerOutput": {"Tables": { "TableThreshold": 5 }}}'
API

使用 API 设置 TableThreshold

"{"Version":1.0, "CrawlerOutput": {"Tables":{"AddOrUpdateBehavior":"MergeNewColumns", "TableThreshold":5}}}";
使用 AWS Management Console 设置 TableThreshold
  1. 登录 AWS Management Console,然后打开 AWS Glue 控制台,网址为:https://console.aws.amazon.com/glue/

  2. 配置爬网程序时,在输出和计划中,将最大表阈值设置为爬网程序允许生成的表数。

    AWS 控制台的“Output and scheduling”(输出和计划)部分显示最大表阈值参数。

记录错误消息以帮助您识别表路径和清理数据。爬网程序因表数大于提供的表阈值而失败时您账户中的日志示例:

Table Threshold value = 28, Tables detected - 29

在 CloudWatch 中,我们将检测到的所有表位置记录为 INFO 消息。将错误记录为失败原因。

ERROR com.amazonaws.services.glue.customerLogs.CustomerLogService - CustomerLogService received CustomerFacingException with message The number of tables detected by crawler: 29 is greater than the table threshold value provided: 28. Failing crawler without writing to Data Catalog. com.amazonaws.services.glue.exceptions.CustomerFacingInternalException: The number of tables detected by crawler: 29 is greater than the table threshold value provided: 28. Failing crawler without writing to Data Catalog.
隐私网站条款Cookie 首选项
© 2025, Amazon Web Services, Inc. 或其附属公司。保留所有权利。