Когда именно Athena требует повторного сканирования разделов с помощью MSCK REPAIR TABLE? - PullRequest
0 голосов
/ 25 сентября 2019

Из документации не ясно, нужно ли вам запускать MSCK REPAIR TABLE каждый раз, когда новые данные добавляются в раздел, или только когда в данных появляется новое значение раздела (т. Е. При вставке нового "папка "в S3 путем создания объекта по определенному пути [я знаю, в S3 нет настоящих папок]).

Кто-нибудь знает, как он должен работать?

1 Ответ

2 голосов
/ 26 сентября 2019

Афина полагается на «макет таблицы Hive», для этого просто использует Glue metastore.В Glue вы регистрируете разделы , а не отдельные файлы .

Если вы создаете новую папку разделов, вам необходимо зарегистрировать ее (и это то, что MSCK REPAIR TABLEделает, между прочим).

Если вы просто добавляете новые файлы, вам не нужно ничего делать.

Примечание: MSCK REPAIR TABLE не обязательно является более быстрым способом обнаружения новых разделов,Presto 319 поставляется со встроенной процедурой подключения Hive: sync_partition_metadata, которую можно использовать для этой цели.Конечно, это доступно при использовании Presto напрямую.Он не доступен в Афине (хотя он основан на Presto).

...