Я написал несколько mapreduce
заданий, которые ссылаются на несколько внешних jar-файлов.поэтому я добавил их в CLASSPATH «работающего» кластера для запуска заданий.
После того, как я попытался запустить их, я получил класс не найденные исключения.Я гуглил способы исправить это и обнаружил, что мне нужно перезапустить кластер для применения измененного CLASSPATH, и это действительно сработало.
О, блин!Должен ли я действительно перезапускать кластер каждый раз, когда я добавляю новые файлы JAR в CLASSPATH?Я не думаю, что это имеет смысл.
Кто-нибудь знает, как применить изменения, не перезапуская их?
Я думаю, что мне нужно добавить некоторые детали, чтобы попросить вашего совета.
Я написал собственный класс фильтра hbase
и упаковал его в банку.И я написал работу mapreduce
, которая использует класс специального фильтра, и упаковал ее в другую банку.Поскольку jar класса фильтра не был в пути к классу моего «работающего» кластера, я добавил его.Но мне не удалось запустить задание, пока я не перезапустил кластер.
Конечно, я знаю, что мог бы собрать класс фильтра и задание в один сосуд.Но я не это имел ввиду.И мне любопытно, что я должен перезапустить кластер снова, если мне нужно добавить новые внешние банки?