AWS Glue 爬虫和存储在 S3 中的大表

AWS Glue Crawlers and large tables stored in S3

我有一些关于 AWS Glue 及其爬网程序的一般性问题。我有一些数据流到 S3 存储桶中,我使用 AWS Athena 在 redshift 中将它们作为外部 tables 访问。 table 是按小时分区的,一些胶水爬虫每小时更新一次分区和 table 结构。

问题是爬虫花费的时间越来越长,总有一天他们不会在不到一个小时的时间内完成。 是否有一些设置可以加快此过程或 AWS Glue 中爬虫的一些适当替代方案?

遗憾的是,Glue Crawlers 没有用于调整性​​能的配置选项。但是,据我所知,AWS Glue 团队应该会发布一项可显着提高爬虫性能的功能(虽然不知道日期)。

一般来说,在 Data Catalog 中注册新分区的方法很少:

  1. Run a Glue Crawler
  2. Run MSCK REPAIR TABLE <table> Athena query
  3. Add partition via Athena
  4. Add partition via Glue API

最有效的方法是手动添加分区(3 或 4)。因此,如果您知道何时以及应该注册哪些新分区,那么您可以设置一个 lambda 函数来调用 Athena 或 Glue API。 lambda 本身可能由 SNS 或 CloudWatch 事件触发。