#hive #compression #file-format #amazon-athena #presto
#улей #сжатие #формат файла #amazon-athena #presto
Вопрос:
У меня есть некоторые данные в Athena, и я хочу объединить их и создать новую таблицу. Я могу сделать это с помощью операции as CTAS, и AWS предоставляет несколько примеров.
Я создаю выходные данные в TEXTFILE
формате, и я не хочу никакого сжатия. По этой ссылке
В этом примере также указано сжатие как быстрое. Если этот параметр опущен, используется GZIP.
Вот пример моего кода:
CREATE TABLE "main_extended"
WITH (
external_location = 's3://attr-dev/data-joiner/test-1/main_extended/',
format = 'TEXTFILE',
field_delimiter = ',')
AS
SELECT
t1.*,
t2.month
FROM main t1 left outer join period_month t2
ON t1.period = t2.period
Как мне указать compression
параметр и какое значение должен принимать этот параметр, чтобы «отключить» сжатие для TEXTFILE
формата?
Ответ №1:
На сегодняшний день это не поддерживается синтаксисом CTAS — попробовал несколько подходов, тщательно изучил документацию, а также обратился в службу поддержки AWS.
Рекомендуемый подход к созданию таблиц, которые поддерживаются простыми текстовыми файлами, заключается в вызове простого SELECT
оператора из Athena и указании местоположения вывода, а затем вызове запроса CREATE EXTERNAL TABLE
типа, который ссылается на это местоположение вывода. Результат тот же, но механизм немного отличается.
Комментарии:
1. Я не понял смысла второго абзаца. Можем ли мы получить несжатый текстовый файл, поступив таким образом?