Блог об it, программировании и интернет-маркетинге

Делюсь наблюдениями и личным опытом в области программирования и интернет-маркетинга

Мигрирование Hive на новый NameNode и JobTracker

Posted on | December 12, 2012 | No Comments

Если переустановка или перенастройка Hadoop кастера влечет за собой смену сервера с компонентами NameNode, JobTracker – то вам также понадобится и переконфигурирование Hive.

Удостоверимся что конфиги Hadoop настроены верно:
в /etc/hadoop/conf/core-site.xml содержится
<property>
<name>fs.default.name</name>
<value>hdfs://new-name-node:8020</value>
</property>

в /etc/hadoop/conf/mapred-site.xml содержится
<property>
<name>mapred.job.tracker</name>
<value>hdfs://new-job-tracker:54311</value>
</property>

Далее, у нас возникнет проблема в наших external tables если мы запускаем Hive с настройками хранения метаданных во встроенной БД Derby. Где у нас будут хранится старые данные о местоположении NameNode и JobTracker компонент, по которым слаться запросы при работе – в следствии чего мы будем ловить ошибки вида:
FAILED: Error in metadata: MetaException(message:Got exception: java.net.ConnectException Call old-name-node/xxx.xxx.xxx.xxx:8020 failed on connection exception: java.net.ConnectException: Connection refused)
Если у вас нет бесценных партиций в использумых таблицах, то самым простым будет залезть в /etc/hive/conf/hive-site.xml и изменить там databaseName на новую директорию.
databaseName=/var/lib/hive/metastore/metastore_db – значение по умолчанию
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:derby:;databaseName=/var/lib/hive/metastore/new_metastore_db;create=true</value>
<description>JDBC connect string for a JDBC metastore</description>
</property>
Чтобы при следующем запуске Hive в указаной директории была создана чистая бд, в значении свойства должна быть подстрока “;create=true”.

SEO Community Ваау! News2.ru SMI2 Google Bookmarks I.ua Закладки Yandex Ruspace Web-zakladka Zakladok.net delicious БобрДобр.ru Memori.ru rucity.com МоёМесто.ru Mister Wong

Comments


Warning: count(): Parameter must be an array or an object that implements Countable in /var/www/dezhik.ru/wp-includes/class-wp-comment-query.php on line 399