В соответствии с этим Тема форума AWS, кто-нибудь знает, как использовать AWS-клей для создания таблицы AWS Athena, чьи разделы содержат разные схемы (в в этом случае разные подмножества столбцов из схемы таблицы)?
В настоящий момент, когда я запускаю искатель над этими данными, а затем делаю запрос в Athena, я получаю сообщение об ошибке 'HIVE_PARTITION_SCHEMA_MISMATCH'
Мой вариант использования:
- Разделы представляют дни
- Файлы представляют события
- Каждое событие представляет собой json blob в одном файле s3
- Событие содержит подмножество столбцов (в зависимости от типа события)
- "Схема" всей таблицы - это полный набор столбцов для всех типов событий (это правильно составлено с помощью искателя Glue)
- "Схема" каждого раздела - это поднабор столбцов для типов событий, которые произошли в этот день (следовательно, в Клее каждый раздел потенциально имеет другой поднабор столбцов из схемы таблицы).
- Эта несогласованность вызывает ошибку в Афине, я думаю.
Если бы я должен был вручную написать схему, я мог бы сделать это хорошо, поскольку просто была бы одна схема таблицы, а ключи, отсутствующие в файле JSON, будут обрабатываться как Nulls.
Спасибо заранее!