обновление файла в распределенном кеше в Hadoop

Как мы можем обновить файл/файлы в распределенном кеше?

Например, у меня есть файл свойств в распределенном кеше. Теперь я добавил еще несколько значений в файл свойств.

Параметры:

  1. Добавьте новые значения в старый файл и перезапустите задание.
  2. Замените старый файл новым и перезапустите задание.
  3. Поместите новый файл в новое место и укажите на это место.

Какие из вышеперечисленных вариантов верны и почему?


person user3315815    schedule 24.02.2014    source источник
comment
Можете быть более конкретными? Какие свойства? Что ты пытаешься сделать? Вы хотите обновить файл во время выполнения задания с новыми значениями (я не думаю, что вы можете это сделать)? Вы хотите начать новое задание с файлом в распределенном кэше, который изменился по сравнению с предыдущим заданием?   -  person vefthym    schedule 24.02.2014


Ответы (1)


Это требует понимания того, как работает распределенный кеш: когда вы добавляете файл в распределенный кеш, во время выполнения задания этот файл копируется на каждый узел задачи, и этот файл доступен локально. Поскольку он создает несколько копий: его нельзя изменить.

Варианты 2 и 3 звучат осуществимо, но не уверен, что это правильный путь.

Если файл имеет только набор свойств, вы можете установить их в объекте конфигурации вместо файла в распределенном кеше. Вы можете использовать коллектор для записи вывода в нужное место. (Я не знаю точно ваш вариант использования, поэтому это может не подойти).

person Venkat    schedule 24.02.2014