【发布时间】:2019-07-17 02:51:16
【问题描述】:
我需要在 S3 上使用 Redshift Spectrum 获取数据。 但是,我需要使用两个不同的文件夹(2018 / 2019)。如何在“位置”部分同时使用?
现在我有:
create external table test_spectrum.full_events_test2
(
timestamp bigint,
device struct<locale:struct<country:varchar, language:varchar>, platform:struct<name:varchar>>,
)
row format serde 'org.openx.data.jsonserde.JsonSerDe'
with serdeproperties('ignore.malformed.json'='true', 'paths'='event_type', 'serialization.format'='1')
stored as
inputformat 'org.apache.hadoop.mapred.TextInputFormat'
outputformat 'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
location 's3://myfolder/2019/' -- But I want also 's3://myfolder/2018/'
但是,我也想要 's3://myfolder/2018/'
我该怎么办?
【问题讨论】:
-
使用
location 's3://myfolder/——它将包括myfolder下的所有文件夹。 -
我知道,但是 /myfolder/ 中有一些文件我需要忽略。所以,我不能这样做
-
重新排列您的 s3 数据,以便您拥有一个文件夹,其中所有子文件夹都包含可以组成表格的相似数据。
标签: amazon-web-services amazon-redshift amazon-redshift-spectrum