Quel est le moyen le plus simple de trouver un fichier associé à un bloc dans HDFS donné un nom de bloc / ID P>
3 Réponses :
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): puis numérisez à partir de la correspondance de votre bloc au nom de fichier précédent. : p> Dans ce cas, blk_5202 ... fait partie du bonne chance! p> p> /hadoop/mapred/system/jobtracker.info code> fichier p> < 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). P>
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.
Vous ne savez pas quand cela a été introduit mais vous pouvez faire ce
Cela fonctionne plus rapidement que la réponse de Chris. Ma version HDFS est 3.1.2.
Option 1: le suffixe option 2: Utilisez le blocage sans générationSamp p> .metta code> est nécessaire si vous utilisez le blocage avec GenerationSamp
$ hdfs fsck -blockId blk_1073823706