Добавление файла в раздел улья

До версии hive 0.13 я мог добавить файл в определенный раздел таблицы куста, используя следующую команду:

alter table table add partition (year=2016,month=07,day=25,file_part=1) location '/home/user/data/201607/NetworkActivity_553_1051924_07-25-2016.log.gz';

Наш кластер был обновлен, и улей теперь имеет версию 1.2. Я не могу выполнить указанную выше команду, так как она выдает следующую ошибку:

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. MetaException(message:maprfs:/home/user/data/201607/NetworkActivity_553_1051924_07-25-2016.log.g is not a directory or unable to create one)

Не могли бы вы сообщить мне, что с версии улья 1.2 мы можем добавлять только каталоги в раздел?


person K S Nidhin    schedule 28.07.2016    source источник
comment
можете ли вы выбрать из таблицы ..   -  person sandeep rawat    schedule 28.07.2016
comment
можете ли вы сделать выбор из таблицы .. скорее всего, ваша мета устарела ..   -  person sandeep rawat    schedule 28.07.2016


Ответы (1)


Расположение раздела должно быть каталогом. Сначала создайте раздел с location=some_directory, затем поместите файлы в каталог. Или поместите файлы в какой-либо каталог, затем измените таблицу, добавьте раздел с расположением = каталог.

В вашем примере это так:

alter table table add partition (year=2016,month=07,day=25,file_part=1) location '/home/user/data/201607';
person leftjoin    schedule 28.07.2016
comment
Я просто хочу знать, произошли ли изменения с версии улья 0.13 на версию улья 1.2. Как я уже упоминал в вопросе, я смог добавить файлы, в частности, в раздел, чего сейчас я не могу сделать из-за изменения версии. - person K S Nidhin; 28.07.2016
comment
Насколько я знаю, всегда было так. До версии .13 и после. Раздел представляет собой папку. Я работаю на Хортонворкс. Вероятно, это была ошибка в вашей предыдущей версии Hive, которая позволяла вам добавлять файлы вместо папок. - person leftjoin; 28.07.2016
comment
@KSNidhin: вы пробовали подход, предложенный @leftjoin? Это работает ? - person Ram Ghadiyaram; 29.07.2016