Una comprensión simple del almacén de datos Hive (1)


Un almacén de datos (DW o DWH) es una recopilación de información orientada al sujeto, integrada, variable en el tiempo, pero relativamente estable.

Tres características del almacén de datos: (preguntas de opción múltiple)
  • Orientado a la materia
  • Cambiar con el tiempo
  • Relativamente estable
La principal diferencia entre la base de datos y el almacén de datos:
  • La base de datos solo almacena valores actuales, el almacén de datos almacena valores históricos;
  • Los datos en la base de datos cambian dinámicamente, y los datos se actualizarán cada vez que ocurra un negocio; el almacén de datos son datos históricos estáticos, que solo se pueden agregar y actualizar regularmente;
  • La estructura de datos en la base de datos es relativamente compleja, y hay varias estructuras para satisfacer las necesidades del sistema de procesamiento de negocios, la estructura de datos en el almacén de datos es relativamente simple;
  • La frecuencia de acceso a los datos en la base de datos es alta, pero la cantidad de acceso es pequeña, y la frecuencia de acceso en el almacén de datos es baja pero la cantidad de acceso es alta;
  • El objetivo de los datos en la base de datos es para el personal de procesamiento de negocios, brindando soporte de procesamiento de información para el personal de procesamiento de negocios, y el almacén de datos es para el personal de alta gerencia, brindando apoyo para la toma de decisiones;
  • La base de datos requiere una respuesta rápida al acceder a los datos, y su tiempo de respuesta generalmente es de unos pocos segundos, mientras que el tiempo de respuesta del almacén de datos puede ser de varias horas;
Dos tipos de procesamiento de datos:
  • Procesamiento de transacciones en línea (OLTP): la aplicación principal de bases de datos relacionales tradicionales, centrándose en el procesamiento de transacciones
  • Procesamiento analítico en línea (OLAP): la aplicación principal de los sistemas de almacenamiento de datos, operaciones analíticas complejas, centrándose en el soporte de decisiones

Inserte la descripción de la imagen aquí

Estructura del almacén de datos:
  • Fuente de datos: es la base del almacén de datos, es decir, la fuente de datos del sistema, y ​​generalmente contiene diversa información interna y externa de la empresa.
    • Operar la base de datos
    • Documentación
    • Otras fuentes externas
  • Almacenamiento y gestión de datos: es el núcleo de todo el almacén de datos , que determina la representación de datos externos, extrae, limpia e integra de manera efectiva los datos existentes del sistema, y ​​luego se organiza según el tema.
    • Extracto
    • Convertir
    • Carga
    • Data warehouse-> data mart
  • Servidor OLAP: reorganice los datos que se analizarán de acuerdo con el modelo de datos multidimensionales para ayudar a los usuarios a realizar análisis de múltiples ángulos y niveles en cualquier momento y descubrir las leyes y tendencias de los datos.
    • El servidor
  • Herramientas de front-end: principalmente incluyen varias herramientas de análisis de datos, herramientas de informes, herramientas de consulta, herramientas de minería de datos y varias aplicaciones desarrolladas basadas en almacenes de datos o data marts.
    • Consulta de datos
    • Informe de datos
    • Análisis de datos
    • Varias aplicaciones

Inserte la descripción de la imagen aquí

El modelo de datos del almacén de datos:
  • Modelo en estrella (de uso común): es una combinación de una tabla de hechos y un conjunto de tablas de dimensiones, con la tabla de hechos como centro. Todas las tablas de dimensiones están conectadas directamente a la tabla de hechos, pero las tablas de dimensiones no están relacionadas.
    • Tabla de hechos: es una medida del tema de análisis, que contiene solo las claves externas asociadas a la tabla, y los registros continuarán aumentando
    • Tabla de dimensiones: registre datos de hechos o datos resumidos (la dimensión es un ángulo para analizar los datos)
      Inserte la descripción de la imagen aquí
  • Modelo de copo de nieve: cuando una o más tablas de dimensiones no están conectadas directamente a la tabla de hechos, sino que están conectadas a la tabla de hechos a través de otras tablas de dimensiones.
    Inserte la descripción de la imagen aquí
Colmena:
  • Originado de Facebook.
  • Es una plataforma de almacenamiento de datos construida sobre el sistema de archivos hadoop. Proporciona una serie de herramientas que pueden realizar extracción, conversión y carga de datos (ETL) de datos almacenados en HDFS. Es un tipo de almacenamiento, consulta y análisis almacenado en hadoop La herramienta de datos a gran escala en Hive es un motor de análisis SQL que traduce las declaraciones SQL en trabajos MapReduce y los ejecuta en hadoop. (HiveQL no distingue entre mayúsculas y minúsculas
  • Hive utiliza lenguaje de consulta SQL HQL
La diferencia entre Hive y MySQL:
Contraste Colmena MySQL
Lenguaje de consulta Colmena QL SQL
Ubicación de almacenamiento de datos HDFS Bloquear dispositivo, sistema de archivos local
Formato de datos Definido por el usuario Decisión del sistema
Actualización de datos No compatible Apoyo
Negocios No compatible Apoyo
Retraso de ejecución Alta Bajo
Escalabilidad Alta Bajo
Escala de datos Grande Pequeño
El marco del sistema Hive consta de:
  • Interfaz de usuario (CLI, JDBC / ODBC, WebUI)
  • Servicio en varios idiomas (servidor Thrift) (llamada desde diferentes lenguajes de programación)
  • Motor de accionamiento de bajo nivel (compilador, optimizador, ejecutor)
  • Metastore (Metastore) (nombre de tabla, columna, partición y otra información relacionada, almacenada en derby o MySql)
    Inserte la descripción de la imagen aquí
Mecanismo de funcionamiento de la colmena:
  • Los usuarios se conectan a Hive a través de la interfaz de usuario y publican Hive SQL
  • colmena analiza consultas y formula planes de consulta
  • Hive convierte consultas en trabajos de MapReduce
  • La colmena ejecuta trabajos MapReduce en hadoop (para reducir la dificultad de los analistas que usan hadoop para el análisis de datos)
Como funciona la colmena

Inserte la descripción de la imagen aquí
1: la interfaz de usuario envía la operación de consulta al controlador;
2: el controlador analiza la consulta con la ayuda del compilador y espera obtener el plan de consulta;
3: el compilador envía una solicitud de metadatos al Metastore;
4: Metastore envía metadatos al compilador en respuesta;
5: el compilador verifica los requisitos y reenvía el plan al controlador;
6: el controlador (motor de accionamiento) envía el plan de ejecución al motor de ejecución para ejecutar la tarea;
7: el motor de ejecución obtiene los resultados del DataNode y los envía a la interfaz de usuario Conductor;

modelo de datos de la colmena

Todos los datos en la colmena se almacenan en HDFS, que contiene cuatro tipos de datos (la granularidad se divide de grande a pequeña):

  • Base de datos (base de datos): equivalente al espacio de nombres en una base de datos relacional, su función es aislar a los usuarios y las aplicaciones de bases de datos en diferentes bases de datos o modos;
  • Tabla: las tablas de Hive están compuestas lógicamente de datos almacenados y metadatos relacionados que describen la forma de los datos de la tabla. Los datos almacenados en la tabla se almacenan en el sistema de archivos distribuido. Hay dos tipos de tablas en Hive, una se llama tabla interna, los datos de esta tabla se almacenan en el almacén de datos de Hive, y la otra se llama tabla externa, los datos de esta tabla se pueden almacenar en archivos distribuidos fuera del almacén de datos de Hive En el sistema, también se puede almacenar en el almacén de datos de la colmena. . El almacén de datos de Hive también es un directorio en HDFS. Este directorio es la ruta predeterminada para el almacenamiento de datos de Hive. Puede configurarse en el archivo de configuración de Hive y, finalmente, almacenarse en la metabase.
  • Tabla de partición (Partición): reflejada en el almacenamiento de Hive es un subdirectorio bajo el directorio principal de la tabla (la visualización real de la tabla de Hive es una carpeta), el nombre de este subdirectorio es el nombre de la columna de partición que definimos; El propósito está diseñado para acelerar la velocidad de consulta de datos.
  • Bucket table (Bucket table): es dividir la tabla grande en tablas pequeñas. El propósito de organizar tablas o particiones en tablas de cubo es principalmente para obtener una mayor eficiencia de consulta, especialmente las consultas de muestreo son más convenientes. La tabla de cubetas es la unidad más pequeña del modelo de datos de Hive. Cuando los datos se cargan en la tabla de cubetas, el valor del campo se divide en hash y luego se divide por el número de cubetas para obtener el resto de las cubetas, para garantizar que haya datos en cada cubeta. Físicamente, cada tabla de cubo es un archivo de una tabla o partición.
    Inserte la descripción de la imagen aquí
Publicado 72 artículos originales · elogiado 3 · visitas 3534

Supongo que te gusta

Origin blog.csdn.net/id__39/article/details/105526913
Recomendado
Clasificación