Мне нужно прочитать с помощью presto из s3 весь набор данных, который находится в "bucket-a". Но внутри корзины данные были сохранены в подпапках по годам. Итак, у меня есть ведро, которое выглядит так:
Bucket-a> 2017> data
Bucket-a> 2018> больше данных
Bucket-a> 2019> больше data
Все приведенные выше данные - это та же таблица, но сохраненная таким образом в s3. Обратите внимание, что в самом bucket-a нет данных, просто внутри каждой папки.
Что мне нужно сделать, это прочитать все данные из bucket как одну таблицу, добавив год в виде столбца или раздела.
Я пытался сделать это таким образом, но не сработало:
CREATE TABLE hive.default.mytable (
col1 int,
col2 varchar,
year int
)
WITH (
format = 'json',
partitioned_by = ARRAY['year'],
external_location = 's3://bucket-a/'--also tryed 's3://bucket-a/year/'
)
, а также
CREATE TABLE hive.default.mytable (
col1 int,
col2 varchar,
year int
)
WITH (
format = 'json',
bucketed_by = ARRAY['year'],
bucket_count = 3,
external_location = 's3://bucket-a/'--also tryed's3://bucket-a/year/'
)
Все вышеперечисленное не сработало.
Я видел людей, пишущих с разделами на s3 с помощью presto, но я пытаюсь сделать наоборот: читать данные s3, которые уже разбиты на папки как одну таблицу.
Спасибо.