Экспорт таблицы кустов в другой кластер 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 команды в отдельных подкаталогах.

Другие вопросы по тегам