Экспорт таблицы кустов в другой кластер hadoop или экспорт кустов в кластере + distcp?
Я хочу экспортировать таблицу кустов из одного кластера Hadoop в другой B.
У меня есть 2 подхода:
Первый:
экспорт в hdfs A (тот же кластер)
distcp в hdfs кластера B(другой кластер)
- импорт в куст кластера B
Во-вторых:
- экспорт в hdfs B(другой кластер)
- импорт в куст кластера B
Distcp добавляет дополнительное преимущество?
1 ответ
Непонятно, что вы подразумеваете под "экспорт в HDFS" и "импорт в Hive". Файлы данных Hive хранятся в HDFS в любом случае!
Для управляемой таблицы, когда все эти файлы данных расположены в одном и том же "месте" детерминистическим способом, самое простое, что можно сделать:
- создать пустую управляемую таблицу в кластере B с точно такой же компоновкой и Serde, а также создать все ожидаемые разделы, если таковые имеются
distcp
все дерево HDFS от "местоположения" в A до "местоположения" в B- сделанный!
Вот что мы делаем, чтобы клонировать некоторые данные Prod (сжатие ORC с GZip, разбитые по месяцам) в тестовый кластер.
Обратите внимание, что вы можете ограничить копию списком разделов, используя несколько distcp
команды в отдельных подкаталогах.