我对aws和spark都有点陌生。我被一个问题困住了。我的s3 bucket中有一个文件夹,其中包含两个名为financial_data1.csv和financial_data2.csv的文件。我正试着从两个文件中读取记录并做一个升级插入。
为了运行upsert,我需要将每个记录的时间戳设置为哪个记录是最新的。现在,我的csv文件在记录级别不包含列的created\u timestamp/updated\u timestamp类型。因此,我必须依赖于s3 bucket中文件上载的最后修改时间,它只是文件上载时的时间戳。
我能从sparkscala/sparkjava代码中读取这个上传的文件吗?
目前我想到了两种解决方案:
运行lambda重命名文件并在文件名中添加时间戳。
从java/scala代码中读取所有文件,并使用summary对象获取最后修改的日期=
虽然我可以做到以上两个,但这只会增加另一个开销,即首先通过java/scala代码调用s3获取文件,然后通过spark读取数据。
我想做的是直接读取文件内容,它的文件名+最后修改日期。这可能吗?
暂无答案!
目前还没有任何答案,快来回答吧!