Dans ce blog de tutoriel Hadoop, nous allons couvrir HDFS Équilibreur de disque en détail. Tout d'abord, nous discuterons de ce qu'est l'équilibreur de disque dans Hadoop, puis nous discuterons des différentes opérations de l'équilibreur de disque Hadoop.
Nous aborderons également l'Intra DataNode Disk Balancer dans hadoop et son algorithme. Enfin dans ce tutoriel, nous aborderons les fonctionnalités de Hadoop Équilibreur de disque HDFS en détail.
Présentation de l'équilibreur de disque HDFS
Équilibreur de disque HDFS est un outil en ligne de commande. Il distribue les données uniformément sur tous les disques d'un datanode. L'équilibreur de disque HDFS est complètement différent de l'équilibreur, qui s'occupe de l'équilibrage des données à l'échelle du cluster.
Pour les raisons ci-dessous, HDFS peut ne pas toujours distribuer les données de manière uniforme sur les disques :
- Beaucoup d'écriture et de suppressions
- Remplacement du disque
Cela conduit à un décalage important au sein d'un DataNode. Ainsi, HDFS Balancer ne peut pas gérer cela, qui se préoccupe de l'inclinaison Inter, Non-Intra, DN.
Ainsi, une nouvelle fonctionnalité Intra-DataNode Balancing a vu le jour pour faire face à cette situation. Ceci est appelé via la CLI HDFS Disk Balancer.
Disk Balancer fonctionne sur un nœud de données donné et déplace les blocs d'un disque à l'autre.
Fonctionnement de l'équilibreur de disque
En créant un plan (un ensemble d'instructions) et en exécutant ce plan sur le datanode, l'équilibreur de disque HDFS fonctionne. Ces ensembles d'instructions décrivent la quantité de données à déplacer entre deux disques.
Un plan comporte de nombreuses étapes de déplacement. Ces étapes de déplacement comportent un certain nombre d'octets à déplacer, de disque source et de disque de destination. Un plan peut s'exécuter sur un nœud de données opérationnel.
L'équilibreur de disque HDFS n'est pas activé par défaut ;
Donc, pour activer l'équilibreur de disque HDFS dfs.disk.balancer.enabled est défini vrai dans hdfs-site.xml .
Équilibreur de disque HDFS Intra-DataNode
Lorsque l'utilisateur écrit un nouveau bloc dans HDFS, en utilisant le nœud de données de stratégie de choix de volume, choisissez le disque pour le bloc. Vous trouverez ci-dessous deux de ces politiques :
- Tourniquet : Cette politique distribue les nouveaux blocs de manière uniforme sur les disques disponibles.
- Espace disponible – Cette règle écrit les données sur le disque qui dispose de plus d'espace libre en pourcentage.
Par défaut, HDFS DataNode utilise la règle Round-robin.
Datanode crée toujours un volume de déséquilibre important en raison de la suppression et de l'ajout massifs de fichiers dans HDFS. Il est même possible qu'une politique de sélection de volume basée sur l'espace disponible puisse entraîner des E/S de disque moins efficaces.
Chaque nouvelle écriture ira sur le nouveau disque vide ajouté alors qu'à ce moment-là les autres disques étaient inactifs. Ainsi, créant un goulot d'étranglement sur le nouveau disque.
Pour réduire le problème de déséquilibre des données, la communauté Apache Hadoop a développé des scripts de serveur hors ligne. HDFS-1312 a également introduit un équilibreur de disque en ligne. Cela rééquilibre les volumes sur un nœud de données en cours d'exécution en fonction de diverses métriques.
Capacités de HDFS Disk Balancer
1. Rapport sur la propagation des données
L'utilisateur peut mesurer la manière dont les données sont diffusées à l'aide de métriques.
a) Densité de données de volume ou densité de données intra-nœud
Cette métrique peut calculer la quantité de données se trouvant sur un nœud. Dites également quel est le stockage idéal sur chaque volume.
Formule de calcul, c'est-à-dire le nombre total de données sur ce nœud divisé par la capacité totale du disque de ce nœud.
Stockage idéal = total utilisé % capacité totale
Densité des données de volume = stockage idéal – dfsUsedRatio
- Valeur positive- Cela indique que le disque est sous-utilisé.
- Valeur négative- Cela indique que le disque est surutilisé.
b) Densité de données de nœud ou densité de données inter-nœuds
Comme maintenant, nous avons calculé la densité de données de volume. Ainsi, nous pouvons facilement comparer quels nœuds du centre de données doivent équilibrer ?
c) Rapports
Nous avons maintenant une densité de données de volume et une densité de données de nœud. Ainsi, l'équilibreur de disque peut équilibrer les 20 premiers nœuds du cluster dont la distribution des données est faussée.
2. Équilibrez les données entre les volumes pendant que les nœuds de données sont actifs
L'équilibreur de disque HDFS a la capacité de déplacer des données d'un volume à un autre.
Conclusion
En conclusion, on peut dire que Disk Balancer est l'outil qui distribue les données sur tous les disques d'un datanode. Cela fonctionne en créant un plan (ensemble d'instructions) et en exécutant ce plan sur le datanode.
HDFS Disk Balancer utilise Round-robin et Espace disponible politiques de choix du disque pour le bloc. Si vous trouvez ce blog utile ou si vous avez des questions, veuillez partager avec nous dans la section des commentaires. Nous serons heureux de les résoudre.