¿Cómo se pueden utilizar Tableau y HDFS juntos para lograr la visualización y exploración de datos?

Autor: Zen y el arte de la programación informática

1. Introducción

1.1 Visualización de datos

La visualización de datos se refiere a mostrar datos en forma de gráficos, gráficos de barras o gráficos circulares para ayudar a los usuarios a comprender las tendencias cambiantes de los datos de manera más intuitiva, mejorando así la eficiencia del análisis de datos. La visualización de datos generalmente muestra información de datos a través de varios cuadros, gráficos, cuadros estadísticos, mapas, etc., y ayuda con explicaciones de texto para mejorar su efecto de presentación.

1.2 Introducción a Tableau

Tableau es una herramienta de código abierto para inteligencia empresarial, visualización de datos, análisis, estadísticas y aprendizaje automático. Puede crear y compartir visualizaciones, producir paneles interactivos, colaborar con equipos, crear modelos inteligentes, informes automatizados y una plataforma de análisis escalable. Su naturaleza multiplataforma y su facilidad de uso la convierten en la herramienta elegida por muchas industrias.

1.3 Introducción a HDFS

HDFS (Hadoop Distributed File System) es un sistema de archivos distribuido que puede almacenar, procesar y consultar archivos grandes. HDFS tiene las ventajas de alta tolerancia a fallas, alta disponibilidad y almacenamiento masivo de datos. HDFS está diseñado para manejar enormes conjuntos de datos capaces de ejecutar Hadoop MapReduce. HDFS proporciona una interfaz interactiva simple que permite a los usuarios acceder y almacenar fácilmente datos masivos sin saber nada sobre Hadoop.

1.4 El objetivo principal de este artículo.

Este artículo combinará Tableau y HDFS para resolver el problema de la visualización de datos. Tableau proporciona capacidades de visualización que pueden presentar visualmente información relevante en datos masivos. Como sistema de archivos distribuido, HDFS puede almacenar cantidades masivas de datos y admitir funciones de consulta complejas. Por lo tanto, el uso conjunto de Tableau y HDFS puede lograr capacidades de visualización de datos. Este artículo primero presentará los principios básicos de HDFS, luego presentará cómo instalar y configurar Tableau y, finalmente, usará HDFS para conectarse a la fuente de datos y completar la visualización de datos.

1.5 Sugerencias de lectura

Antes de leer este artículo, debe comprender los conceptos básicos y el uso de HDFS, así como el uso básico de Tableau. Debido a limitaciones de espacio, a continuación solo se enumeran algunos materiales de referencia. Lea el texto original para conocer el contenido específico.

  1. Sitio web oficial de HDFS http://hadoop.apache.org/docs/r1.2.1/hdfs_design.html
  2. Guía autorizada de HDFS http://hadoopbook.cn/zh-cn/introduction.html
  3. Documentación oficial de Tableau https://help.tableau.com/current/pro/desktop/zh-hans/getting_started.htm
  4. Mejores prácticas para combinar Tableau con HDFS http://www.xavierdatascience.com/blog/2017/09/12/best-practices-for-using-tableau-with-hdfs/
  5. Utilice Tableau para visualizar datos HDFS http://www.cnblogs.com/sparksparrow/p/8111188.html
  6. Un análisis en profundidad de las mejores prácticas para combinar Tableau con HDFS http://www.yunweipai.com/archives/13166.html
  7. Errores encontrados cuando HDFS se conecta a Tableau https://www.jianshu.com/p/e2b827a7a2ea

2. Explicación de conceptos y terminología básicos

2.1 Sistema de archivos distribuido Hadoop (HDFS)

2.1.1 Concepto

HDFS es uno de los componentes importantes del marco Apache Hadoop y proporciona un sistema de archivos altamente tolerante a fallas adecuado para el análisis de datos de alto rendimiento. HDFS es un sistema de archivos distribuido: varios nodos del clúster se comunican entre sí a través de la red para proporcionar un mecanismo tolerante a fallas. HDFS se implementa en modo activo-en espera. Todas las solicitudes de escritura se escriben primero en el disco local y luego se copian a otros nodos para garantizar la integridad de los datos. HDFS proporciona una alta tolerancia a fallos y al mismo tiempo garantiza un alto rendimiento. Cuando es necesario acceder a una gran cantidad de datos, el rendimiento de lectura de HDFS es mucho mejor que el de los sistemas de archivos centralizados tradicionales. HDFS almacena datos en bloques y el tamaño predeterminado de cada bloque es 64 MB. Las ventajas de HDFS son:

  • Admite múltiples modelos de datos, incluidos archivos, directorios, pares clave-valor, etc.;
  • Los mecanismos transparentes de replicación y redundancia de datos garantizan la seguridad de los datos;
  • Proporcionar servicios de almacenamiento altamente tolerantes a fallos;
  • La arquitectura escalable admite el almacenamiento masivo de datos;
  • El cliente del sistema de archivos es compatible con la interfaz del sistema de archivos POSIX, lo que hace que sea conveniente para los desarrolladores desarrollar aplicaciones;

2.1.2 Características

HDFS tiene las siguientes características:

  • Sistema de archivos distribuido: la unidad de almacenamiento de HDFS es bloque. Block es la unidad de almacenamiento más pequeña en HDFS. El bloque se divide en múltiples copias de datos y se almacena en diferentes servidores. Los datos se transmiten entre diferentes nodos del clúster a través de la red y cada bloque es guardado por múltiples nodos, lo que puede lograr tolerancia a fallas y alta disponibilidad.

  • Alto rendimiento: para lograr un alto rendimiento, HDFS proporciona un mecanismo de lectura y escritura rápido. El cliente no necesita esperar el SecondaryNameNode a través de comunicación directa con el NameNode, lo que reduce la interacción entre el cliente y el NameNode y mejora el rendimiento general.

  • Mecanismo automático de replicación de datos y tolerancia a fallas: cada bloque de datos será guardado por múltiples nodos, que pueden realizar la replicación automática de datos y garantizar la seguridad de los datos y la tolerancia a fallas. Si un nodo deja de funcionar, otro nodo se hará cargo del bloque y continuará brindando servicios.

  • API HDFS nativa e interfaz de sistema de archivos: los programas cliente se pueden escribir fácilmente en Java, C++, Python y otros lenguajes, utilizando interfaces de sistema de archivos familiares.

2.2 Colmena Apache

2.2.1 Concepto

Hive es una herramienta de almacenamiento de datos basada en Hadoop que puede utilizar la sintaxis de consultas SQL para gestionar big data en Hadoop. Hive ayuda a mapear datos estructurados en una tabla de base de datos y también proporciona HQL (Hive Query Language, Hive Query Language), que se puede utilizar para extraer, transformar y cargar datos (ETL). Hive fue diseñado teniendo en cuenta las necesidades de análisis de datos masivos, teniendo en cuenta la versatilidad y flexibilidad del lenguaje de consulta SQL y la facilidad de cálculo del modelo de programación MapReduce. Hive descompone consultas complejas en tareas más pequeñas a través del motor informático MapReduce y logra consultas rápidas de datos masivos a través de la alta tolerancia a fallas y la escalabilidad elástica de Hadoop. La colmena tiene las siguientes características:

  • Capa de abstracción de datos: Hive permite a los usuarios consultar datos a gran escala utilizando comandos SQL como bases de datos relacionales existentes, y también puede importar datos de fuentes de datos estructuradas o semiestructuradas.

  • Optimizador de consultas: Hive proporciona un optimizador de consultas para seleccionar automáticamente planes de consulta y reducir el tiempo de las consultas especificadas por el usuario.

  • Almacenamiento: Hive almacenará datos en el clúster de Hadoop y ejecutará consultas a través de MapReduce y HDFS. Hive puede administrar metadatos a través de su propio HiveServer2 y Hive Metastore. Los metadatos describen tablas, campos, espacios de tablas, bases de datos, etc. en Hive.

  • Motor de ejecución: Hive proporciona dos motores de ejecución: MapReduce y Tez, puede elegir diferentes motores de ejecución según la complejidad de la declaración de la consulta.

2.3 Chispa Apache

2.3.1 Concepto

Spark es un software de análisis de big data de código abierto desarrollado conjuntamente por Databricks, UC Berkeley AMPLab, AMPLab y Apache Foundation. Sus componentes principales Spark Core, Spark SQL, Spark Streaming, MLlib y GraphX ​​​​pueden ejecutarse en Hadoop Yarn. Spark surgió como una nueva generación de tecnología de procesamiento de big data debido a las limitaciones y defectos de MapReduce. Las principales características de Spark son las siguientes:

  • Capacidades de procesamiento de big data: Spark Core proporciona capacidades informáticas basadas en memoria y puede procesar rápidamente grandes conjuntos de datos.

  • Cálculo iterativo: Spark Core tiene muy buen soporte para algoritmos iterativos sin estado.

  • Modelo informático unificado: el modelo informático unificado de Spark Core, SQL, Streaming y GraphX ​​​​puede implementar un modelo de programación unificado para que los desarrolladores puedan comenzar rápidamente.

  • Optimización de consultas dinámicas: Spark SQL proporciona un optimizador de consultas basado en reglas que selecciona automáticamente planes de consulta.

  • MLib: MLib proporciona una rica biblioteca de funciones para algoritmos de aprendizaje automático de uso común, que incluyen agrupación en clústeres, regresión, árboles de decisión, Bayes ingenuo, filtrado colaborativo, modelos lineales, sistemas de recomendación, etc.

  • Computación de gráficos: GraphX ​​​​proporciona teoría de gráficos y algoritmos de procesamiento de gráficos, como PageRank, Triangle Counting y Connected Components.

3. Principios básicos del algoritmo y pasos operativos específicos.

3.1 Instalación y configuración

3.1.1 Instalar y configurar Hadoop

Descargue la versión de lanzamiento de Hadoop 1.2.1; se omite el proceso de instalación.

3.1.2 Configurar Hadoop

Modifique el archivo de configuración core-site.xml y agregue los siguientes elementos de configuración:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
</configuration>

Aquí, el valor del atributo fs.defaultFS se establece en hdfs://localhost:9000, lo que significa que el puerto 9000 del host local se utiliza como espacio de nombres predeterminado de HDFS.

3.1.3 Instalar y configurar Tableau Desktop

Descargue la versión de lanzamiento de Tableau Desktop; se omite el proceso de instalación.

3.1.4 Configurar Tableau Desktop

Abra Tableau Desktop, haga clic en "Archivo" -> "Conectar a fuente de datos..." en la barra de menú para ingresar a la página de datos de conexión. En "Elegir un tipo de fuente de datos" a la izquierda, seleccione "Archivo de texto". Luego ingrese la ruta al archivo de texto. Supongamos aquí que el nombre del archivo de texto es /user/hive/warehouse/mydatabase.db/tablename y que el método de conexión es el siguiente: Entre ellos:

  • /user/hive/warehouse/mydatabase.db/tablename representa la ubicación real en el sistema de archivos HDFS;
  • Archivo de texto significa que el archivo es un archivo de texto y las siguientes propiedades se pueden configurar de acuerdo con la situación real;
  • Enter Directory indica que el archivo no es un directorio;
  • Puede omitir el siguiente paso y simplemente hacer clic en Conectar.

3.2 Crear proyecto de visualización

3.2.1 Uso de Tableau Desktop

Abra Tableau Desktop y cree un nuevo proyecto en blanco. Haga clic en "Insertar" -> "Herramientas de análisis" -> "Mapeo de campos" en la barra de menú y aparecerá la siguiente página: Entre ellas:

  • Detalles de conexión: complete la información relevante para conectarse a HDFS; consulte la Sección 3 para obtener instrucciones de configuración de instalación;
  • Campos para incluir qué campos se leen del archivo HDFS, por ejemplo, "*" representa todos los campos;
  • Los campos seleccionados agregan campos que deben mostrarse, incluidas columnas, filas, agregación, filtrado, etc.

Después de la creación, haga clic en "Hojas" en la barra de navegación superior para ver los resultados de la visualización, como se muestra a continuación:

3.2.2 Uso de Tableau Server

(1) Configurar el servidor Tableau Server

Descargue el paquete de versión de Tableau Server 10.2 y se omitirá el proceso de instalación después de la descompresión. Configure el archivo tableau_server.ini y agregue los siguientes elementos de configuración:

[vizqlserver]
host = localhost
port = 8060
# enable SSL support for HTTPS connections using self signed certificates, change this to false in production environments
ssl_enabled = true
# the path of the keystore file containing trusted certificates used by SSL server sockets
keystore_path = ""
# the password of the keystore file
keystore_password = ""

[authentication]
mode = auth-and-writes # specify which authentication modes are enabled and allowed
provider_type = ldap # use LDAP as the default provider
ldap_url = ldaps://localhost # configure an LDAP server URL here if needed
# set either of these two options to turn on Active Directory or Microsoft Active Directory integration
active_directory_domain_name = example.local
# active_directory_security_group_filter = (&(objectClass=group)(member=%u)) # optional filter applied to group lookup

Inicie el servidor de Tableau Server:

./tabadmin start
(2) Configurar el cliente de Tableau Desktop

Abra Tableau Desktop y cree un nuevo proyecto en blanco. Haga clic en "Archivo" -> "Conectar al servidor" en la barra de menú para conectarse a la dirección del servicio iniciado de Tableau Server. Seleccione el primer nodo del servidor en "Elegir un servidor" a la izquierda. Si hay varios, puede seleccionar cualquiera. Ingrese el nombre de usuario y la contraseña y el inicio de sesión será exitoso. Haga clic en "Conectar". Luego siga los pasos en 3.2.1 para configurar los parámetros de conexión y crear un proyecto de visualización.

Supongo que te gusta

Origin blog.csdn.net/universsky2015/article/details/133446665
Recomendado
Clasificación