Práticas recomendadas para transferência de dados entre clusters do Hadoop

1

Situação: Eu preciso transferir cerca de 100 TB de um antigo cluster do Hadoop para um novo cluster do Hadoop. Os dois clusters têm uma conexão direta de 1 GbE do namenode em cada cluster. Os datanodes não estão conectados.

O que eu tentei:

  • Distcp: Isso não funciona porque os datanodes antigos e novos não estão conectados, ele relataria a conexão expirada em cada trabalho do mapreduce.
  • hdfs dfs -cp: Isso está funcionando muito bem até agora, mas tende a desacelerar e, eventualmente, parar a transferência depois de algumas horas. Também não suporta compressão ou boa capacidade de reinicialização.

O que me interessa:

  • Como minha conexão entre o Cluster 1 e o Cluster 2 é o gargalo, estou interessado em encontrar uma ferramenta que me permita compactar os dados no Cluster 1, enviá-los por fio com pouca sobrecarga (netcat talvez?) e descompactá-lo no Cluster 2. O Rsync seria perfeito, mas não sei como usá-lo entre dois clusters do Hadoop.
  • Outras recomendações com as quais não estou familiarizado.

Minha pergunta:

  • Quais ferramentas ou scripts posso usar para transferir dados entre o Cluster 1 e o Cluster 2 com eficiência, considerando minhas limitações listadas?
por tbenz9 24.09.2017 / 18:37

0 respostas