sql >> Base de Datos >  >> NoSQL >> HBase

HDFS Disk Balancer Introducción, operaciones y características

En este blog de Tutorial de Hadoop, vamos a cubrir HDFS Equilibrador de disco en detalle. En primer lugar, discutiremos qué es Disk Balancer en Hadoop, luego discutiremos varias operaciones de Hadoop Disk balancer.

También discutiremos el Intra DataNode Disk Balancer en hadoop y su algoritmo. Por último, en este tutorial, cubriremos las características de Hadoop. Equilibrador de disco HDFS en detalle.

Introducción a HDFS Disk Balancer

Equilibrador de discos HDFS es una herramienta de línea de comandos. Distribuye los datos uniformemente en todos los discos de un nodo de datos. HDFS Disk balancer es completamente diferente de Balancer, que se encarga del balanceo de datos en todo el clúster.

Debido a las siguientes razones, es posible que HDFS no siempre distribuya los datos de manera uniforme en los discos:

  • Muchas cosas escritas y borradas
  • Reemplazo de disco

Esto conduce a un sesgo significativo dentro de un DataNode. Por lo tanto, HDFS Balancer no puede manejar esto, que se relaciona con el sesgo Inter, Non-Intra, DN.

Por lo tanto, surgió la nueva funcionalidad de Equilibrio Intra-DataNode para hacer frente a esta situación. Esto se invoca a través de la CLI de HDFS Disk Balancer.

Disk Balancer funciona contra un nodo de datos determinado y mueve bloques de un disco a otro.

Funcionamiento del equilibrador de disco

Al crear un plan (un conjunto de declaraciones) y ejecutar ese plan en el nodo de datos, funciona el balanceador de disco HDFS. Estos conjuntos de declaraciones describen cuántos datos deben moverse entre dos discos.

Un plan tiene muchos pasos de movimiento. Estos pasos de movimiento tienen una cantidad de bytes para mover, disco de origen y disco de destino. Un plan puede ejecutarse contra un nodo de datos operativo.

El equilibrador de disco HDFS no está habilitado de forma predeterminada;

Entonces, para habilitar el balanceador de disco HDFS dfs.disk.balancer.enabled se establece verdadero en sitio hdfs.xml .

Equilibrador de disco HDFS Intra-DataNode

Cuando el usuario escribe un nuevo bloque en HDFS, al usar el nodo de datos de la política de selección de volumen, elija el disco para el bloque. A continuación se presentan dos políticas de este tipo:

  • Todos contra todos:  Esta política distribuye los nuevos bloques de manera uniforme entre los discos disponibles.
  • Espacio disponible:  Esta política escribe datos en el disco que tiene más espacio libre por porcentaje.

De forma predeterminada, HDFS DataNode utiliza la política Round-robin.

Datanode todavía crea un volumen de desequilibrio significativo debido a la eliminación masiva de archivos y la adición en HDFS. Incluso es posible que la política de elección de volumen basada en el espacio disponible pueda conducir a una E/S de disco menos eficiente.

Cada nueva escritura irá al nuevo disco vacío agregado mientras que en ese momento los otros discos estaban inactivos. Por lo tanto, se crea un cuello de botella en el nuevo disco.

Para reducir el problema del desequilibrio de datos, la comunidad de Apache Hadoop desarrolló scripts fuera de línea del servidor. HDFS-1312 también introdujo un equilibrador de disco en línea. Esto vuelve a equilibrar los volúmenes en un nodo de datos en ejecución en función de varias métricas.

Capacidades de HDFS Disk Balancer

1. Informe de distribución de datos

El usuario puede medir cómo distribuir los datos a través de métricas.

a) Densidad de datos de volumen o densidad de datos dentro del nodo

Esta métrica puede calcular cuántos datos hay en un nodo. Indique también cuál es el almacenamiento ideal en cada volumen.

Fórmula para el cálculo, es decir, datos totales en ese nodo divididos por la capacidad total del disco de ese nodo.

Almacenamiento ideal =total utilizado % de capacidad total
Densidad de datos de volumen =almacenamiento ideal – dfsUsedRatio

  • Valor positivo- Esto indica que el disco está infrautilizado.
  • Valor negativo- Esto indica que el disco está sobreutilizado.
b) Densidad de datos de nodos o densidad de datos entre nodos

Como ahora hemos calculado la densidad de datos de volumen. Entonces, ¿podemos comparar fácilmente qué nodos del centro de datos deben equilibrarse?

c) Informes

Ahora tenemos densidad de datos de volumen y densidad de datos de nodo. Por lo tanto, el equilibrador de disco puede equilibrar los 20 nodos principales del clúster que tienen una distribución de datos sesgada.

2. Equilibre los datos entre el volumen mientras el nodo de datos está vivo

HDFS Disk balancer tiene la capacidad de mover datos de un volumen a otro.

Conclusión

En conclusión, podemos decir que Disk Balancer es la herramienta que distribuye datos en todos los discos de un nodo de datos. Funciona creando un plan (conjunto de declaraciones) y ejecutando ese plan en el nodo de datos.

HDFS Disk Balancer utiliza Round-robinEspacio disponible políticas para elegir el disco para el bloque. Si encuentra útil este blog, o si tiene alguna consulta, compártala con nosotros en la sección de comentarios. Estaremos encantados de resolverlos.