以下划线开头的 S3 对象作为 Glue DynamicFrame 进行读取。

0

【以下的问题经过翻译处理】 我将JSON数据存储在S3上,然后在其上创建Glue表。这些数据被分区,我使用Glue爬虫更新表分区。然后,我将这些数据作为Glue作业中的Glue DynamicFrame加载。我使用Glue 3.0,并使用awsglue包的GlueContext.create_dynamic_frame.from_catalog方法创建DynamicFrame。

这对于我的大部分数据很有效,但由于一些原因,DynamicFrame无法加载S3中以下划线开头的文件名的数据。我使用两个完全相同的对象进行重现,一个命名为something,另一个命名为_something_something对象未读入DynamicFrame,但在将对象重命名为something_else(开头没有下划线)后,它成功地被读入DynamicFrame。

查询了一些搜索结果,告诉我这可能是Presto的一个“特性”。Athena在底层使用Presto,而Glue在底层使用Athena?从presto版本0.60开始,Presto忽略以下划线_或点.开头的文件。有一个org.apache.hadoop.hive.common.FileUtils.HIDDEN_FILES_PATH_FILTER属性,但我不确定是否可以在Glue中配置此属性。

profile picture
EXPERTE
gefragt vor 5 Monaten7 Aufrufe
1 Antwort
0

【以下的回答经过翻译处理】 您好,

请注意,目前使用Glue动态帧处理以“_”下划线开头的S3对象名称存在已知限制。因此,您可以通过重命名以下划线开头的对象作为解决方法。 另外,Glue不使用Athena,因此您无法在Glue中配置任何关于此的内容,因为这是一个限制。 谢谢!

profile picture
EXPERTE
beantwortet vor 5 Monaten

Du bist nicht angemeldet. Anmelden um eine Antwort zu veröffentlichen.

Eine gute Antwort beantwortet die Frage klar, gibt konstruktives Feedback und fördert die berufliche Weiterentwicklung des Fragenstellers.

Richtlinien für die Beantwortung von Fragen