Tutorial de HDFS: Introducción a HDFS y sus características



Este blog de tutoriales de HDFS lo ayudará a comprender HDFS o Hadoop Distributed File System y sus características. También explorará brevemente sus componentes principales.

HDFS Tutorial

Antes de seguir adelante en este blog de tutoriales de HDFS, permítame explicarle algunas de las locas estadísticas relacionadas con HDFS:

  • En 2010, Facebook afirma tener uno de los clústeres HDFS más grandes que almacenan 21 petabytes de datos.
  • En 2012, Facebook declaró que tienen el clúster HDFS más grande con más de 100 PB de datos .
  • Y Yahoo ! tiene más que 100,000 CPU en más de 40.000 servidores ejecutando Hadoop, con su clúster de Hadoop más grande en ejecución 4.500 nodos . En total, Yahoo! historias 455 petabytes de datos en HDFS.
  • De hecho, en 2013, la mayoría de los grandes nombres de Fortune 50 comenzaron a usar Hadoop.

¿Demasiado difícil de digerir? Correcto. Como se discutió en , Hadoop tiene dos unidades fundamentales: S torage y Procesando . Cuando digo que el almacenamiento es parte de Hadoop, me refiero a HDFS Lo que significa Sistema de archivos distribuido Hadoop . Entonces, en este blog, les presentaré HDFS .





Aquí, estaré hablando de:

  • ¿Qué es HDFS?
  • Ventajas de HDFS
  • Características de HDFS

Antes de hablar de HDFS, déjame decirte, ¿qué es un sistema de archivos distribuido?



DFS o sistema de archivos distribuido:

Sistema de archivos distribuido habla sobre gerente datos , es decir archivos o carpetas en varios equipos o servidores. En otras palabras, DFS es un sistema de archivos que nos permite almacenar datos en múltiples nodos o máquinas en un clúster y permite que múltiples usuarios accedan a los datos. Entonces, básicamente, tiene el mismo propósito que el sistema de archivos que está disponible en su máquina, como para Windows tiene NTFS (New Technology File System) o para Mac tiene HFS (Hierarchical File System). La única diferencia es que, en el caso del sistema de archivos distribuido, los datos se almacenan en varias máquinas en lugar de en una sola. Aunque los archivos se almacenan en la red, DFS organiza y muestra los datos de tal manera que un usuario sentado en una máquina sentirá que todos los datos están almacenados en esa misma máquina.

¿Qué es HDFS?

El sistema de archivos distribuido de Hadoop o HDFS es un sistema de archivos distribuido basado en Java que le permite almacenar grandes datos en varios nodos en un clúster de Hadoop. Entonces, si instala Hadoop, obtiene HDFS como un sistema de almacenamiento subyacente para almacenar los datos en el entorno distribuido.

Tomemos un ejemplo para entenderlo. Imagine que tiene diez máquinas o diez computadoras con un disco duro de 1 TB en cada máquina. Ahora, HDFS dice que si instala Hadoop como plataforma sobre estas diez máquinas, obtendrá HDFS como servicio de almacenamiento. El sistema de archivos distribuido de Hadoop se distribuye de tal manera que cada máquina aporta su almacenamiento individual para almacenar cualquier tipo de datos.



copia superficial vs copia profunda java

Tutorial de HDFS: ventajas de HDFS

1. Almacenamiento distribuido:

Almacenamiento distribuido - Tutorial de HDFS - Edureka

Cuando accede al sistema de archivos distribuido de Hadoop desde cualquiera de las diez máquinas del clúster de Hadoop, se sentirá como si hubiera iniciado sesión en una sola máquina grande que tiene una capacidad de almacenamiento de 10 TB (almacenamiento total en diez máquinas). Qué significa eso? Significa que puede almacenar un solo archivo grande de 10 TB que se distribuirá entre las diez máquinas (1 TB cada una).Así es no limitado a los límites físicos de cada máquina individual.

2. Computación distribuida y paralela:

Debido a que los datos se dividen entre las máquinas, nos permite aprovechar Computación distribuida y paralela . Entendamos este concepto con el ejemplo anterior. Supongamos que se necesitan 43 minutos para procesar un archivo de 1 TB en una sola máquina. Entonces, ahora dígame, ¿cuánto tiempo tomará procesar el mismo archivo de 1 TB cuando tiene 10 máquinas en un clúster Hadoop con una configuración similar: 43 minutos o 4,3 minutos? 4.3 minutos, ¡cierto! ¿Que pasó aquí? Cada uno de los nodos está trabajando con una parte del archivo de 1 TB en paralelo. Por lo tanto, el trabajo que tomaba 43 minutos antes, se termina en solo 4,3 minutos ahora, ya que el trabajo se dividió en diez máquinas.

3. Escalabilidad horizontal:

Por último, pero no menos importante, hablemos del escala horizontal o escalando en Hadoop. Hay dos tipos de escalado: vertical y horizontal . En el escalado vertical (escalado), aumenta la capacidad de hardware de su sistema. En otras palabras, obtiene más RAM o CPU y lo agrega a su sistema existente para hacerlo más robusto y poderoso. Pero existen desafíos asociados con el escalado vertical o el escalado:

  • Siempre hay un límite al cual puede aumentar la capacidad de su hardware. Por lo tanto, no puede seguir aumentando la RAM o la CPU de la máquina.
  • En el escalado vertical, primero detiene su máquina. Luego, aumenta la RAM o la CPU para convertirla en una pila de hardware más robusta. Una vez que haya aumentado la capacidad de su hardware, reinicie la máquina. Este tiempo de inactividad cuando detiene su sistema se convierte en un desafío.

En caso de escala horizontal (escala horizontal) , agrega más nodos al clúster existente en lugar de aumentar la capacidad de hardware de las máquinas individuales. Y lo más importante, puedes agregue más máquinas sobre la marcha es decir, sin detener el sistema . Por lo tanto, mientras escalamos, no tenemos ningún tiempo de inactividad o zona verde, nada de ese tipo. Al final del día, tendrá más máquinas trabajando en paralelo para cumplir con sus requisitos.

HDFS Tutorial Video:

Puede ver el video que se muestra a continuación donde se han discutido en detalle todos los conceptos relacionados con HDFS:

HDFS Tutorial: Características de HDFS

Comprenderemos estas características en detalle cuando exploremos la arquitectura HDFS en nuestro próximo blog tutorial de HDFS. Pero, por ahora, veamos una descripción general de las funciones de HDFS:

  • Costo: El HDFS, en general, se implementa en un hardware básico como su computadora de escritorio / computadora portátil que usa todos los días. Entonces, es muy económico en términos del costo de propiedad del proyecto. Dado que utilizamos hardware básico de bajo costo, no es necesario que gaste una gran cantidad de dinero para ampliar su clúster de Hadoop. En otras palabras, agregar más nodos a su HDFS es rentable.
  • Variedad y volumen de datos: Cuando hablamos de HDFS, hablamos de almacenar datos enormes, es decir, terabytes y petabytes de datos y diferentes tipos de datos. Por lo tanto, puede almacenar cualquier tipo de datos en HDFS, ya sean estructurados, no estructurados o semiestructurados.
  • Fiabilidad y tolerancia a fallos: Cuando almacena datos en HDFS, internamente divide los datos dados en bloques de datos y los almacena de forma distribuida en su clúster de Hadoop. La información sobre qué bloque de datos se encuentra en cuál de los nodos de datos se registra en los metadatos. NameNode gestiona los metadatos y la DataNodes son responsables de almacenar los datos.
    El nodo de nombre también replica los datos, es decir, mantiene múltiples copias de los datos. Esta replicación de los datos hace que HDFS sea muy confiable y tolerante a fallas. Por lo tanto, incluso si falla alguno de los nodos, podemos recuperar los datos de las réplicas que residen en otros nodos de datos. Por defecto, el factor de replicación es 3. Por lo tanto, si almacena 1 GB de archivo en HDFS, finalmente ocupará 3 GB de espacio. El nodo de nombre actualiza periódicamente los metadatos y mantiene coherente el factor de replicación.
  • Integridad de los datos: La integridad de los datos habla de si los datos almacenados en mi HDFS son correctos o no. HDFS comprueba constantemente la integridad de los datos almacenados con su suma de comprobación. Si encuentra alguna falla, informa al nodo de nombre al respecto. Luego, el nodo de nombre crea nuevas réplicas adicionales y, por lo tanto, elimina las copias dañadas.
  • Alto rendimiento: El rendimiento es la cantidad de trabajo realizado en una unidad de tiempo. Habla de qué tan rápido puede acceder a los datos desde el sistema de archivos. Básicamente, le da una idea del rendimiento del sistema. Como ha visto en el ejemplo anterior, en el que utilizamos diez máquinas en conjunto para mejorar la computación. Allí pudimos reducir el tiempo de procesamiento de 43 minutos a un mero 4.3 minutos ya que todas las máquinas estaban trabajando en paralelo. Por lo tanto, al procesar datos en paralelo, disminuimos enormemente el tiempo de procesamiento y, por lo tanto, logramos un alto rendimiento.
  • Localidad de datos: La localidad de datos habla de mover la unidad de procesamiento a los datos en lugar de los datos a la unidad de procesamiento. En nuestro sistema tradicional, solíamos llevar los datos a la capa de aplicación y luego procesarlos. Pero ahora, debido a la arquitectura y al gran volumen de datos, llevar los datos a la capa de aplicaciónreducir el rendimiento de la red en una medida notable.Entonces, en HDFS, llevamos la parte de cálculo a los nodos de datos donde residen los datos. Por lo tanto, no está moviendo los datos, está trayendo el programa o procesoparte de los datos.

Ahora, tienes una breve idea sobre HDFS y sus características. Pero créanme chicos, esto es solo la punta del iceberg. En mi proxima , Me sumergiré en el Arquitectura HDFS y revelaré los secretos detrás del éxito de HDFS. Juntos estaremos respondiendo a todas aquellas preguntas que están reflexionando en tu cabeza como:

  • ¿Qué sucede detrás de escena cuando lee o escribe datos en Hadoop Distributed File System?
  • ¿Cuáles son los algoritmos como el reconocimiento de racks que hacen que HDFS sea tan tolerante a fallas?
  • ¿Cómo Hadoop Distributed File System administra y crea réplicas?
  • ¿Qué son las operaciones de bloque?

Ahora que ha entendido HDFS y sus funciones, consulte la por Edureka, una empresa de aprendizaje en línea de confianza con una red de más de 250.000 alumnos satisfechos repartidos por todo el mundo. El curso de formación de certificación de Edureka Big Data Hadoop ayuda a los alumnos a convertirse en expertos en HDFS, Yarn, MapReduce, Pig, Hive, HBase, Oozie, Flume y Sqoop utilizando casos de uso en tiempo real en el dominio de comercio minorista, redes sociales, aviación, turismo y finanzas.

Tienes una pregunta para nosotros? Menciónalo en la sección de comentarios y nos comunicaremos contigo.