Добавить несколько файлов в распределенный кеш в HIVE
В настоящее время у меня возникла проблема с добавлением содержимого папок в доверенный кеш Hives. Я могу успешно добавить несколько файлов в распределенный кеш в Hive, используя:
ADD FILE /folder/file1.ext;
ADD FILE /folder/file2.ext;
ADD FILE /folder/file3.ext;
etc.
.
Я также вижу, что естьADD FILES
(множественное число) вариант, который, на мой взгляд, означает, что вы можете указать каталог, как:ADD FILES /folder/;
и все в папке будет включено (это работает с опцией Hadoop Streaming -files). Но это не работает с Hive. Прямо сейчас я должен явно добавить каждый файл.
Я делаю это неправильно? Есть ли способ иметь целые папки содержимого в распределенном кэше.
Постскриптум Я пробовал джокерыADD FILE /folder/*
а такжеADD FILES /folder/*
но это тоже не удается.
Редактировать:
Начиная с улья 0.11 это теперь поддерживается так:
ADD FILE /folder
в настоящее время работает.
Я использую передачу местоположения папки скрипту куста в качестве параметра так:
$ hive -f my-query.hql -hiveconf folder=/folder
и в файле my-query.hql:
ADD FILE ${hiveconf:folder}
Красиво и аккуратно сейчас!