Descripción general de Big Data y ecosistema de Hadoop

Descripción general de Big Data y ecosistema de Hadoop

¿Qué es Big Data?

  • Big data se refiere a una recopilación de datos cuyo contenido no se puede capturar, administrar y procesar con herramientas de software convencionales dentro de un cierto período de tiempo.

Inserte la descripción de la imagen aquí
Inserte la descripción de la imagen aquí

Funciones de big data

Característica 4V

  • Volumen (gran volumen de datos): el 90% de los datos se generaron en los últimos dos años
  • Velocidad (rápida): el crecimiento de los datos es rápido y la puntualidad es alta
  • Variedad: diversificación de fuentes y tipos de datos
    • Datos estructurados, datos semiestructurados, datos no estructurados
  • Valor (densidad de valor bajo): es necesario extraer para obtener el valor de los datos

Características inherentes

Oportunidad

Inmutabilidad

Computación distribuída

La informática distribuida divide los datos más grandes en partes más pequeñas para su procesamiento.

**** Computación distribuida tradicional Nueva computación distribuida-Hadoop
Cálculo Copiar datos para calcular el nodo Computación paralela en diferentes nodos de datos
La cantidad de datos que se pueden procesar. Pequeña cantidad de datos Gran cantidad de datos
Límite de rendimiento de la CPU Muy limitado por la CPU Limitado por un solo dispositivo
Mejorar la potencia informática Mejore la potencia informática de una sola máquina Expanda los clústeres de servidores de bajo costo

¿Qué es Hadoop?

  • Hadoop es una arquitectura de sistema distribuido de código abierto

    • Sistema de archivos distribuido HDFS que soluciona el almacenamiento de big data
    • Marco de computación distribuida MapReduce: resolución de big data computing
    • Sistema de gestión de recursos distribuidos YARN
  • La arquitectura preferida para manejar datos masivos

  • Complete las tareas de computación de big data muy rápidamente

  • Se ha convertido en un ecosistema Hadoop.

Inserte la descripción de la imagen aquí

Desarrollo y versión de Hadoop

  • Hadoop se originó en el motor de búsqueda Apache Nutch

    • Fundador: Doug Cutting
    • 2004-Versión inicial implementada
    • 2008-Conviértete en uno de los mejores proyectos de Apache
  • Versión de lanzamiento de Hadoop

    • Edición de la comunidad: Apache Hadoop
    • Lanzamiento de Cloudera: CDH
    • Lanzamiento de Hortonworks: HDP

¿Por qué usar Hadoop?

  • Alta escalabilidad y escalabilidad
  • Alta fiabilidad
    • Mecanismo de copias múltiples, alta tolerancia a fallas
  • bajo costo
  • Arquitectura de nada compartido
  • Flexible, puede almacenar cualquier tipo de datos
  • Código abierto, comunidad activa

Hadoop frente a RDBMS

Comparación de Hadoop y base de datos relacional

**** RDBMS Hadoop
formato Requerido al escribir datos Requerido al leer datos
velocidad Datos de lectura rápida Velocidad de escritura de datos rápida
Supervisión de datos Estructura estándar Datos de estructura arbitraria
procesamiento de datos Poder de procesamiento limitado Potente poder de procesamiento
tipo de datos Datos estructurados Estructurado, semiestructurado, no estructurado
Escenarios de aplicación Análisis OLAP interactivo procesamiento de transacciones ACID sistema empresarial empresarial Procesamiento de datos no estructurados, almacenamiento y cálculo masivo de datos

Ecosistema de Hadoop

  • Hadoop core
    HDFS, MapReduce, YARN, paquete público común, núcleo

  • Consulta y análisis de datos
    Hive, Pig, Impala, Presto

  • Coordinar la gestión

    HCatalog 、 Zookeeper 、 Ambari

  • migración de datos

    Flume (soporte en tiempo real), Sqoop

Spark, NoSQK, aprendizaje automático, programación de tareas, etc.

Inserte la descripción de la imagen aquí

Zookeeper

  • Es un servicio de coordinación de aplicaciones distribuidas.
    • Resolver el problema de coherencia del sistema de aplicaciones en el clúster distribuido.
  • Funciones proporcionadas
    • Gestión de la configuración, servicio de nombres, sincronización distribuida, gestión de colas, gestión de clústeres, etc.
  • característica
    • Consistencia de datos globales
    • Fiabilidad, secuencia, tiempo real
    • Atomicidad de actualización de datos
  • Grupo de cuidadores del zoológico
    • Rol: líder, seguidor, observador

Arquitectura Hadoop

  • HDFS (sistema de archivos distribuido Hadoop)
    • Sistema de archivos distribuido para resolver el almacenamiento distribuido
  • Mapa reducido
    • Marco de computación distribuida
  • HILO
    • Sistema de gestión de recursos distribuidos
    • Introducido en Hadoop 2.x
  • Común
    • Programas de utilidad comunes que admiten todos los demás módulos

Inserte la descripción de la imagen aquí

HDFS

Funciones HDFS

  • Ventajas de HDFS
    • Soporte para manejar archivos muy grandes
    • Puede funcionar con máquinas baratas
    • Alta tolerancia a fallas
    • Transmisión de escritura de archivos
  • Desventajas de HDFS
    • No apto para escenarios de acceso a datos de baja latencia
    • No apto para escenarios de acceso a archivos pequeños
    • No apto para envío y escritura combinados, escenarios de modificación de archivos aleatorios

HDFS CLI (línea de comando)

  • Formato
    básico hdfs
    dfs -cmd hadoop fs -cmd (obsoleto)
  • Comandos de Linux y similares
    -ls
    -mkdir
    -put
    -rm
    -help

hdfs dfsadmin

El comando dfsadmin se usa para administrar el clúster HDFS

mando descripción
hdfs dfsadmin -report Devolver información sobre el estado del clúster
hdfs dfsadmin -safemode entrar / salir Entrar y salir del modo seguro
hdfs dfsadmin -saveNamespace Guarde el espacio de nombres del clúster
hdfs dfsadmin -rollEdits Revertir el registro de edición
hdfs dfsadmin -refreshNodes Actualizar nodo
hdfs dfsadmin -getDatanodeInfo nodo 1 : 8010 Obtener información del nodo de datos
hdfs dfsadmin -setQuota 10 / h **** dfs Establecer cuota de directorio de archivos

Rol de HDFS

  • Cliente: Cliente
  • NameNode (NN): nodo de metadatos
    • Administrar el espacio de nombres / metadatos del sistema de archivos
    • Un clúster HDFS tiene solo un NN activo
  • DataNode (DN): nodo de datos
    • Nodo de almacenamiento de datos, guardar y recuperar Bloque
    • Un clúster puede tener varios nodos de datos
  • Nodo de nombre secundario (SNN): desde el nodo de metadatos
    • Fusionar los registros de edición del NameNode en el archivo fsimage
    • Ayudar a NN a conservar la información de metadatos en la memoria

Inserte la descripción de la imagen aquí

Arquitectura HDFS

Inserte la descripción de la imagen aquí

Mecanismo de copia HDFS

  • Bloque: bloque de datos
    • La unidad de almacenamiento más básica de HDFS
    • Tamaño de bloque predeterminado: 128 M (2.x)
  • Mecanismo de copia
    • Rol: evitar la pérdida de datos
    • El número predeterminado de copias es 3
    • Mecanismo de almacenamiento:
      • Un nodo en el rack local
      • Un nodo diferente en el mismo rack
      • Un nodo en un rack diferente

Inserte la descripción de la imagen aquí

HDFS de alta disponibilidad (alta disponibilidad)

  • En versión 1.x
    • Problema de un solo punto con Namenode
  • En la versión 2.x
    • Solución: método de federación HDFS, compartir recursos DN
    • Nodo de nombre activo
      • Servicio externo
  • Standby Namenode
    • Activo se puede cambiar a Activo cuando falla

Archivos de lectura HDFS

Inserte la descripción de la imagen aquí

Archivo de escritura HDFS

Inserte la descripción de la imagen aquí

Formato de archivo HDFS

  • HDFS admite el almacenamiento de todo tipo de archivos en diferentes formatos
    • Texto, binario
    • Sin comprimir, comprimido
  • Para un procesamiento óptimo de Map-Reduce, los archivos deben poder dividirse
    • SequenceFile
    • Archivo Avro
    • RCFile y ORCFile
    • Archivo de parquet

Uso de Java para implementar la lectura y escritura de archivos HDFS

"Funcionamiento de hdfs con java"

Supongo que te gusta

Origin blog.csdn.net/zmzdmx/article/details/108499418
Recomendado
Clasificación