Best Practices für die Datenübertragung zwischen Hadoop-Clustern

533
tbenz9

Situation: Ich muss etwa 100 TB von einem alten Hadoop-Cluster auf einen neuen Hadoop-Cluster übertragen. Die beiden Cluster verfügen über eine direkte 1-GbE-Verbindung vom Namensknoten in jedem Cluster. Die Datenknoten sind nicht verbunden.

Was ich probiert habe:

  • Distcp: Dies funktioniert nicht, da die alten und neuen Datanodes nicht miteinander verbunden sind. Dies würde das Verbindungszeitlimit für jeden Mapreduce-Job anzeigen.
  • hdfs dfs -cp: Das funktioniert bisher ziemlich gut, verlangsamt sich jedoch und endet nach einigen Stunden. Es unterstützt auch keine Komprimierung oder gute Neustartfähigkeit.

Was mich interessiert:

  • Da meine Verbindung zwischen Cluster 1 und Cluster 2 der Engpass ist, bin ich daran interessiert, ein Tool zu finden, mit dem ich die Daten in Cluster 1 komprimieren kann, indem ich sie mit sehr geringem Aufwand (netcat vielleicht?) Über das Kabel schicke und sie in Cluster 2 dekomprimiere Rsync wäre perfekt, aber ich bin mir nicht sicher, wie man das zwischen zwei Hadoop-Clustern verwendet.
  • Andere Empfehlungen, mit denen ich nicht vertraut bin.

Meine Frage:

  • Welche Tools oder Skripts kann ich verwenden, um Daten zwischen Cluster 1 und Cluster 2 effizient zu übertragen, wenn meine Einschränkungen aufgeführt sind?
1

0 Antworten auf die Frage