根据上次修改,将文件从s3下载到Hive?

时间:2015-06-22 23:40:04

标签: hadoop amazon-s3 hive

我想下载一组last modified日期属于特定时间段的文件,比如说2015-5-62015-6-17。这些文件的内容将直接放入Hive表中进行进一步处理。

我知道this是可能的,但是它只适用于一个文件或整个存储桶。我想下载一个时间范围内last modified的存储桶中的所有文件。

如何根据上述要求将多个文件下载到Hive表中?

2 个答案:

答案 0 :(得分:1)

你试过这个

吗?
CREATE EXTERNAL TABLE myTable (key STRING, value INT) LOCATION   
's3n://mys3bucket/myDir/* ;  or  
's3n://mys3bucket/myDir/filename*'(if it starts with something common)

答案 1 :(得分:1)

这可以使用AWS SDK for Java,其中可以使用自定义UDF或UDTF来ping密钥并使用以下命令返回其上次修改日期:

S3ObjectSummary.getLastModified();

更多信息:AWS Java SDK Docs - S3ObjectSummary