【问题标题】:HadoopDataSource: Skipping Partition {} as no new files detected @ s3:HadoopDataSource:跳过分区 {},因为没有检测到新文件 @ s3:
【发布时间】:2021-05-18 16:58:32
【问题描述】:

所以,我有一个 S3 文件夹,其中有几个子文件夹作为分区(基于创建日期)。我有一个用于这些分区的 Glue Table,可以使用 Athena 查看数据。

运行胶水作业并尝试访问目录我收到以下错误:

HadoopDataSource: Skipping Partition {} as no new files detected @ s3:...

给我带来问题的行如下:

glueContext.getCatalogSource(database = "DB_NAME", tableName = "TABLE_NAME", redshiftTmpDir = "", transformationContext = "datasource0").getDynamicFrame().toDF()

我希望随时访问这些 S3 子文件夹中的所有数据,因为这些数据会定期更新。

我认为问题在于胶水作业书签未检测到新文件,但这不是直接作为作业的一部分运行,而是作为作业使用的库的一部分。

删除“transformationContext”或将其值更改为空无效。

【问题讨论】:

    标签: scala apache-spark aws-glue aws-glue-data-catalog


    【解决方案1】:

    所以你得到的 Hadoop 输出不是错误,而只是分区为空的简单日志。

    但正在记录的分区{} 似乎已关闭。你能检查一下吗?

    此外,您能否在禁用书签的情况下运行作业,以确保这不是问题的原因?

    我也发现了这个unresolved GitHub issue,也许你也可以在那里发表评论,让问题得到一些关注。

    【讨论】:

    • 我不知道如何从库中禁用书签。
    • 你不能。你没有访问运行环境的权限吗?
    • 不是我需要的。如果我不能从库中做到这一点,我将不得不重构几件事。现在我正在尝试使用开发端点对其进行测试。
    • 我很确定无法从脚本中禁用书签。刚刚检查了 Spark / Glue 环境配置变量,并且书签不存在。
    猜你喜欢
    • 2023-03-20
    • 2014-12-25
    • 2023-03-09
    • 2014-01-27
    • 2018-07-17
    • 2019-09-07
    • 1970-01-01
    • 1970-01-01
    • 2011-08-24
    相关资源
    最近更新 更多