[英]Get most recent file in S3 via PySpark
有沒有辦法通過 Pyspark 獲取 S3 存儲庫中的最后一個文件?
我設法使用以下代碼用 Python 做到了:
paginator = client.get_paginator('list_objects_v2')
pages = paginator.paginate(Bucket=Bucket, Prefix=Path)
for page in pages:
for obj in page['Contents']:
latest = max(page['Contents'], key=lambda x: x['LastModified'])
在 Spark 上我找不到任何文檔。
謝謝
您只需使用 Hadoop FileSystem API,使用 listStatusIterator()/listFiles() 獲取迭代器並掃描, FileStatus.getModificationTime()
為您提供最后修改的字段。
但請注意:大文件上傳的 S3 時間戳是上傳開始而非完成的時間。 上傳需要幾分鍾的大文件會比上傳過程中在單個 PUT 中上傳的小文件更舊。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.