10
votes

Comment trouver le fichier de BlockName dans HDFS Hadoop

Quel est le moyen le plus simple de trouver un fichier associé à un bloc dans HDFS donné un nom de bloc / ID


0 commentaires

3 Réponses :


11
votes

La manière longue et douloureuse, en supposant que vous ayez lu l'accès à tous les fichiers (et exécutez-vous pour les répertoires): xxx

puis numérisez à partir de la correspondance de votre bloc au nom de fichier précédent. : xxx

Dans ce cas, blk_5202 ... fait partie du /hadoop/mapred/system/jobtracker.info fichier < p> Programmatiquement, ce n'est pas une interface avec le nœud de nom qui vous permet de rechercher par ID de bloc, mais vous pouvez examiner la source du nœud de nom secondaire et voir comment elle consolide les modifications - puis expérimentez sur la sortie enregistrée de Le nœud de nom secondaire (plutôt que de risquer de travailler sur le fichier de nœud de nom en direct).

bonne chance!


1 commentaires

Cela peut prendre plus de temps si vous lancez sur un cluster relativement important. Cependant, cela vous donne la taille du bloc et l'identifiant de bloc complet qui inclut le type de données qu'il réside.



17
votes

Vous ne savez pas quand cela a été introduit mais vous pouvez faire ce xxx


1 commentaires

Cela fonctionne plus rapidement que la réponse de Chris. Ma version HDFS est 3.1.2.



1
votes

Option 1: le suffixe .metta ​​code> est nécessaire si vous utilisez le blocage avec GenerationSamp xxx pré>

option 2: Utilisez le blocage sans générationSamp p>

$ hdfs fsck -blockId blk_1073823706


0 commentaires