Construcción del entorno de Kylin (tutorial de nivel de niñera)

1. Introducción a Kylin

Apache Kylin es un motor de procesamiento analítico en línea (OLAP) de código abierto basado en la plataforma de big data Hadoop. Utiliza tecnología de precomputación de cubos multidimensionales para mejorar la velocidad de consulta SQL de big data desde el minuto anterior o incluso el nivel de la hora hasta el nivel de subsegundos .

1. Historial de desarrollo

Problemas encontrados por eBay: Ante el crecimiento exponencial de los datos, la arquitectura tradicional solo puede escalar verticalmente e inevitablemente encontrará un "cuello de botella"; aunque existe una plataforma de big data de Hadoop que puede proporcionar almacenamiento de datos a gran escala y análisis, no se puede comparar con la plataforma de BI. El acoplamiento no es lo suficientemente maduro y no puede proporcionar consultas interactivas eficientes.

  • A mediados de 2013, eBay lanzó un proyecto de big data, parte del cual era una investigación previa sobre BI en Hadoop. Después de extensos análisis y pruebas, no había ningún proyecto en el mercado que no solo pudiera proporcionar un rendimiento de consulta de segundo nivel en conjuntos de datos de gran escala, sino que también se integrara perfectamente con la plataforma de BI. El Centro de Excelencia de eBay China formó un pequeño equipo y decidió implementar una solución OLAP-on-Hadoop por sí mismo.
  • A fines de septiembre de 2014, la plataforma de big data cuyo nombre en código es Kylin se lanzó oficialmente en eBay.
  • El 1 de octubre de 2014, el líder del proyecto Kylin, Han Qing, envió el código fuente del proyecto a github.com y abrió oficialmente el código
  • Se unió oficialmente al proyecto de incubadora Apache en noviembre de 2014
  • En noviembre de 2015, Apache Software Foundation anunció que Apache Kylin se había convertido oficialmente en un proyecto de primer nivel. Este es también el primer proyecto de código abierto de Apache de alto nivel dirigido por chinos y tiene una gran influencia en la comunidad internacional de código abierto.
  • En marzo de 2016, se estableció oficialmente Kyligence, una empresa emergente formada por los principales desarrolladores de Apache Kylin.
  • En 2015 y 2016, ganó el premio "Best Open Source Big Data Tool Award" de Bossie Award de InfoWorld durante dos años consecutivos. Aquí está la lista de ganadores a lo largo de los años: https://www.infoworld.com/article/2688545/infoworld-bossies.html

2. Cómo funciona

El principio de funcionamiento de Apache Kylin es esencialmente MOLAP (Multidimensional Online Analytical Processing) Cube, que es un análisis de cubo multidimensional. Su principio de funcionamiento es realizar un cálculo previo de Cube en el modelo de datos y utilizar los resultados del cálculo para acelerar la consulta. El proceso es el siguiente:
(1) Especificar el modelo de datos (actualmente admite el esquema de estrella y el modelo de copo de nieve), definir dimensiones y medidas.
(2) Calcular previamente el cubo, calcular todos los cubos y guardarlos como vistas materializadas.
(3) Al ejecutar una consulta, lea el cuboide y realice operaciones de procesamiento para generar los resultados de la consulta.

3. Arquitectura básica

Toda la arquitectura de Kylin se puede dividir en dos partes: consulta en línea y construcción fuera de línea .

  • Compilación sin conexión: el motor de compilación extrae datos del origen de datos (los datos se ajustan al esquema en estrella o al modelo de copo de nieve) y construye el cubo. Los usuarios pueden elegir construir con MapReduce o Spark. El cubo creado se guarda en el motor de almacenamiento de la derecha Actualmente, HBase es el motor de almacenamiento predeterminado.
  • Consulta en línea: una vez completada la construcción, los usuarios pueden consultar y analizar a través de REST API y JDBC/ODBC.

Diagrama de arquitectura de Kylin

4. Características

  • Interfaz SQL estándar: Kylin usa la tecnología Cube como núcleo internamente, pero no usa MDX (eXpresión multidimensional) externamente, pero usa SQL estándar como la interfaz principal para servicios externos. Esto se debe principalmente a que la herramienta con la que la mayoría de los analistas están más familiarizados sigue siendo SQL, y SQL también es la interfaz de programación utilizada por la mayoría de las aplicaciones.
  • Compatibilidad con conjuntos de datos muy grandes: la capacidad de Kylin para admitir grandes datos puede ser la más avanzada entre todas las tecnologías actuales. Ya en 2015, el entorno de producción de eBay podía admitir consultas de segundo nivel de decenas de miles de millones de registros, y luego hubo casos de consultas de segundo nivel de cientos de miles de millones de registros en escenarios de aplicaciones móviles.
  • Respuesta de menos de un segundo: Kylin tiene una excelente velocidad de respuesta a las consultas, lo que se beneficia del cálculo previo. Muchos cálculos complejos, como la conexión y la agregación, se han completado en el proceso de cálculo previo fuera de línea, lo que reduce en gran medida el tiempo de consulta requerido. La cantidad de cálculo y se mejora la velocidad de respuesta.
  • Escalabilidad y alto rendimiento: Kylin de un solo nodo puede lograr 70 consultas por segundo y también puede crear clústeres de Kylin
  • Integración de herramientas de BI: Kylin se puede integrar con las herramientas de BI existentes, incluidas las siguientes:
    • ODBC: Integración con Tableau, Excel, PowerBI y más
    • JDBC: Integración con herramientas Java como Saiku, BIRT, etc.
    • RestAPI: Integración con JavaScript, páginas Web

2. Instalación de Kylin

1. Preparación ambiental

Se recomienda oficialmente usar una distribución como HDP o CDH para la instalación. Este artículo usará la versión de Apache para la instalación. Las siguientes son las versiones de cada dependencia:

  • Hadoop 2.7.7: puede consultar el tutorial de instalación de Hadoop: https://blog.csdn.net/tangyi2008/article/details/121908766
  • Zookeeper: Consulte el tutorial de instalación de ZooKeeper: https://blog.csdn.net/tangyi2008/article/details/121984758
  • HBase 1.1.13: puede consultar el tutorial de instalación de HBase: https://blog.csdn.net/tangyi2008/article/details/122593037, tenga en cuenta que la versión en la publicación del blog es 2.1.9, recuerde reemplazarla con 1.1.13
  • Hive 2.3.9: puede consultar el tutorial de instalación de Hive: https://blog.csdn.net/tangyi2008/article/details/123368215

Este artículo no usa dependencias como Spark y Kafka por el momento.

La selección de la versión es muy importante. Si no tiene un conjunto de versiones compatibles, puede consultar este artículo para seleccionar y puede ejecutarse (en ese momento, se encontraron varios problemas al usar hbase-2.1.9 y hbase-1.7) No se pudo solucionar las versiones .1. , y finalmente se cambió a HBase 1.1.13 todo funciona)

2. Kylín

Dirección de descarga: https://archive.apache.org/dist/kylin/

La versión seleccionada en este artículo es: apache-kylin-3.1.3-bin-hbase1x.tar.gz

Después de descargar la versión correspondiente de Kylin, cárguela en el servidor y cargue este artículo en el ~/softdirectorio.Este artículo está de acuerdo:

  • El nombre de usuario utilizado en el tutorial esxiaobai
  • La ubicación del paquete de instalación./home/xiaobai/soft
  • directorio instalado/home/xiaobai/opt
  • nombre de hostnode1

Cargar, descomprimir, crear enlace suave

tar -xvf apache-kylin-3.1.3-bin-hbase1x.tar.gz -C ~/opt
cd ~/opt
ln -s apache-kylin-3.1.3-bin-hbase1x kylin

Configurar variables de entorno

vi ~/.bashrc

Añadir al final del archivo:

export KYLIN_HOME=/home/xiaobai/opt/kylin
export PATH=$KYLIN_HOME/bin:$PATH

Ejecute el comando para que surta efecto.source ~/.bashrc

3. Empezar

Antes de iniciar Kylin, debe iniciar Hadoop (hdfs, yarn, jobhistoryserver), Zookeeper y Hbase.

La secuencia de inicio completa es la siguiente:

zkServer.sh start
start-dfs.sh
start-yarn.sh
mr-jobhistory-daemon.sh start historyserver
start-hbase.sh 
kylin.sh start

4. Iniciar sesión en la página web

Ingrese a la página web: http://node1:7070/kylin/ para iniciar sesión, la cuenta inicial es ADMINy la contraseña esKYLIN

[La transferencia de la imagen del enlace externo falló, el sitio de origen puede tener un mecanismo anti-leech, se recomienda guardar la imagen y cargarla directamenteKylinIniciar sesión

Actualizaré el contenido relacionado con la construcción de cubos y el análisis de consultas más adelante.

3. Recursos relacionados

Los recursos relevantes de este artículo se colocan en el disco de red:

链接:https://pan.baidu.com/s/1kjcuNNCY2FxYA5o7Z2tgkQ 
提取码:nuli 

Supongo que te gusta

Origin blog.csdn.net/tangyi2008/article/details/123452796
Recomendado
Clasificación