[英]Is there a way to read filename from S3 bucket when running AWS Glue ETL job and name the output filename. Does pyspark provide a way to do it?
[英]How to Read Filename from S3 using AWS Glue ETL Tools
我在 S3 中有一些看起來像這樣的文件(都在同一路徑中):
group1_20210415.csv
group2_20210415.csv
group1_20210416.csv
group2_20210416.csv
每個文件的架構相當簡單:
group1_name, group1_id
group2_name, group2_id
我希望能夠使用 Athena 從 S3 查詢這些名稱和 ID,並在存在新文件時使用 AWS Glue 抓取該 S3 位置。
具體來說,我想在 Athena 中有一個帶有架構的表:
group1_name, group1_id, group2_name, group2_id, hit_date
我的直覺是使用 AWS Glue PySpark 將 S3 文件中的數據組合成一個 DataFrame,這很簡單。 但是,每個文件的日期存在於文件名本身而不是數據中。
有沒有辦法提取文件名的“日期”部分並將其用作 AWS Glue PySpark DataFrame 中的列? 如果沒有,是否有人的直覺提出了另一種方法?
你可以試試這個: data_frame.withColumn("input_file", input_file_name())
然后你可以轉換這個列來提取日期。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.