HDFS Verringerter Replikationsfaktor

8

Ich habe den Replikationsfaktor von 3 auf 1 reduziert, sehe aber keine Aktivität aus dem Namenode oder zwischen den Daten, um übermäßig replizierte HDFS-Dateiblöcke zu entfernen. Gibt es eine Möglichkeit, den Replikationsauftrag zu überwachen oder zu erzwingen?

    
Carl Sagan 23.07.2013, 00:18
quelle

4 Antworten

18

Das Ändern von dfs.replication gilt nur für neue Dateien, die Sie erstellen, ändert jedoch nicht den Replikationsfaktor für die bereits vorhandenen Dateien.

Um den Replikationsfaktor für bereits vorhandene Dateien zu ändern, können Sie den folgenden Befehl ausführen, der rekursiv für alle Dateien in HDFS ausgeführt wird:

%Vor%     
Charles Menguy 23.07.2013, 02:50
quelle
4

Wenn Sie den Standardreplikationsfaktor von 3 auf 2 von cloudera manager ändern

%Vor%

dann haben nur neue geschriebene Daten 2 Replikate für jeden Block.

Bitte verwenden Sie

%Vor%

in der Befehlszeile (in der Regel ein Knoten mit HDFS-Gateway-Rolle), wenn Sie den Replikationsfaktor aller vorhandenen Daten ändern möchten. Dieser Befehl ändert rekursiv den Replikationsfaktor aller Dateien im Stammverzeichnis /.

Syntax:

%Vor%

Referenz:

Ссылка

    
Ankit Rakha 29.07.2014 07:20
quelle
0

Der neue Replikationsfaktor betrifft nur neue Dateien. So ändern Sie den Replikationsfaktor für vorhandene Dateien, die in der Shell ausgeführt werden (auf dem Knoten mit dem Hadoop-Einstiegspunkt)

%Vor%

Aber nur "hdfs" können nach / schreiben ("hdfs" ist der Superuser, nicht "root"). Also, möglicherweise müssen Sie dies ausführen:

%Vor%     
Alexandr Eroshenko 24.04.2017 14:45
quelle
-7

Vielleicht können Sie eine Kartenfunktion schreiben, um die Dateiblöcke zu entfernen!

    
minicaptain 23.07.2013 01:21
quelle

Tags und Links