Афина - правильные значения столбца DATE из JSON

У меня есть ведро S3 со многими файлами JSON.

Пример файла JSON:

{"id":"x109pri", "import_date":"2017-11-06"}

Поле «import_date» имеет тип ДАТА в стандартном формате ГГГГ-ММ-ДД.

Я создаю соединение с базой данных в Афине, чтобы связать все эти файлы JSON.

Однако, когда я создаю новую таблицу в Athena и указываю этот формат поля как ДАТА, я получаю: «Внутренняя ошибка» без какого-либо другого объяснения. Чтобы уточнить, таблица создается нормально, но если я хочу ее просмотреть или запросить, я получаю эту ошибку.

Однако, когда я указываю это поле как STRING, оно работает нормально.

Итак, вопрос в том, это ОШИБКА или какое значение должно быть правильным для формата Athena DATE?


person pdolinaj    schedule 06.11.2017    source источник


Ответы (1)


Тип столбца даты не работает с некоторыми комбинациями SerDe и / или источника данных.

Например, использование столбца DATE с org.openx.data.jsonserde.JsonSerDe не работает, а org.apache.hive.hcatalog.data.JsonSerDe работает.

Итак, со следующим определением таблицы запрос вашего JSON будет работать.

create external table datetest(
  id string,
  import_date date
)
ROW FORMAT  serde 'org.apache.hive.hcatalog.data.JsonSerDe'
LOCATION 's3://bucket/datetest'
person jens walter    schedule 06.11.2017