Este blog explica cómo configurar un clúster de Couchbase Analytics en menos de 5 clics y crear un panel de visualización en tiempo real con Tableau.
Introducción
Servidor Couchbase es una base de datos híbrida NoSQL que admite datos operativos y analítica cargas de trabajo. Couchbase Analytics en Couchbase Server 6.0 trae "NoETL para NoSQL", permitiendo a los usuarios ejecutar consultas analíticas ad-hoc sobre datos JSON en su forma natural - sin necesidad de transformación o diseño de esquemas - aprovechando un paralelo masivo (MPP).
Todas las empresas han invertido ya en una herramienta de visualización y, por tanto, tienen una necesidad crítica de aprovechar las inversiones existentes. Esto incluye no solo las herramientas, sino también los conocimientos y la formación de los equipos de elaboración de informes empresariales y de cuadros de mando.
Siempre he creído que la prueba está en el proverbial pudín cuando se trata de analizar y visualizar datos JSON en tiempo real. En la siguiente sección, mostraré cómo Couchbase resuelve este desafío.
Escenario de demostración
Permítanme darles la Escenario de Couchbase Analytics del que hice una demostración durante Couchbase Connect 2018 para la keynote de arquitectura:
Imagine una empresa ficticia que gestiona una flota de coches en la que cada uno de ellos envía datos operativos a su "nave nodriza". El equipo de operaciones puede supervisar los datos entrantes que envían los coches mientras están en tránsito y tener configuradas alertas del sistema para cualquier fallo en las lecturas de indicadores críticos.
Los retos que el equipo de operaciones querría resolver podrían incluir:
1. Cómo analizar los datos entrantes sin afectar a la capacidad de los coches para enviar datos.
2. Cómo utilizar una herramienta de visualización de Tableau para crear un cuadro de mando en tiempo real de la situación sobre el terreno.
Modelo de datos
Como parte de la demostración, he creado un modelo de datos JSON para representar la información en tiempo real que envía cada coche en la carretera. Como ocurre con la mayoría de los modelos de datos JSON, los objetos anidados y las matrices forman parte de los datos que se envían al coche. Por ejemplo, he modelado las lecturas de la presión de los neumáticos como una matriz: si la empresa ficticia de automóviles empezara a fabricar bicicletas con 2 ruedas o camiones con 6 ruedas, el modelo de datos no necesitaría ningún cambio.
Pruébalo en 5 clics: Configuración de un clúster con Couchbase Analytics
Si eres nuevo en Couchbase, puedes descargar Couchbase Server 6.0 y probarlo por tu cuenta. Puedes elegir instalar Couchbase en una sola máquina o instalar un cluster. Las siguientes instrucciones son para añadir un nuevo nodo a un cluster. Si estás ejecutando todo en una sola máquina, por favor asegúrate de que los servicios de datos y análisis se están ejecutando en el nodo.
Un subconjunto del conjunto de datos utilizado en la demostración está disponible para su descarga. Deberá descargar y extraer el archivo conjunto de datos de demostración.
Utilice el botón "cbimport" para importar este conjunto de datos en su propio clúster Couchbase 6.0. El comando para hacer esto en el Mac es:
1 |
/Aplicaciones/Couchbase\ Servidor.aplicación/Contenido/Recursos/couchbase-núcleo/papelera/cbimport json -c <nombre_host_del_cluster_o_IP> -u <nombre de usuario> -p <contraseña> -b coches -f líneas -d archivo:// -g "#UUID#" |
Para su entorno, consulte la cbimport docs.
Ahora que tienes las lecturas de los coches en la carretera disponibles en el clúster operativo, vamos a añadir un nodo de análisis al clúster para empezar a explorar y analizar las lecturas que se envían en tiempo real. Tendrás que iniciar sesión en la consola de administración de Couchbase para seguir los pasos que se indican a continuación. También puedes seguir el vídeo de demostración mencionado anteriormente.
- Haga clic en "Añadir servidor" en la esquina superior derecha de la pantalla.
- Tendrás que proporcionar los detalles en el cuadro de diálogo de la siguiente manera:
*Consejo profesional para usuarios de Mac: "Opción + clic" le ahorrará un montón de clics al seleccionar "Analytics". - En el mismo cuadro de diálogo, pulse el botón "Añadir servidor".
- Elija la cantidad de memoria que desea asignar al nodo de Couchbase Analytics
- Por último, haga clic en "Reequilibrar".
En 5 clics, habrás añadido un nuevo servicio Couchbase Analytics a tu clúster.
Ahora vamos a hacer que los datos operativos estén disponibles para el análisis mediante la creación de un conjunto de datos sombra.
1 2 |
crear conjunto de datos en coches donde `tipo`="telemática"; conecte enlace Local; |
Al ejecutar las sentencias anteriores en el workbench de Couchbase Analytics, habrás creado un conjunto de datos sombra para el análisis y la exploración de datos:
Exploración de datos
Empecemos a explorar los datos. Si yo fuera el director de operaciones, me gustaría saber si el problema está muy extendido y si afecta a más de un tipo de coche.
1 2 3 4 5 |
Total # de coches con TPMS ON seleccionar * de coches donde TPMS="ON" límite 1000 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
Tipos de coches teniendo con este condición seleccione Tipo de modelo, cuente(*) como cuente de coches donde TPMS="ON" grupo por Tipo de modelo Muestra resultado [ { "contar": 1052, "Tipo de modelo": "Coche compacto" }, { "contar": 1106, "Tipo de modelo": "Híbrido" } ] |
Si eres desarrollador SQL, las consultas anteriores deberían resultarte familiares. Couchbase Server permite a los equipos analíticos aplicar sus conocimientos de SQL al mundo sin esquemas y anidado de los datos JSON. Más información N1QL y SQL.
Ahora descartemos un falso positivo. Puede haber una situación en la que el indicador TPMS puede estar enviando una lectura defectuosa, pero los valores reales de presión de los neumáticos podría estar bien. Las lecturas reales de la presión de los neumáticos se envían como una matriz JSON. Comprobemos si realmente son bajas.
1 2 3 4 5 6 |
Son allí cualquier falso positivos? seleccionar * de coches donde TPMS="ON" Y (CADA tp en coches.Presión de los neumáticos SATISFACE tp > 30) límite 1000 |
La consulta anterior devuelve aquellos valores en los que el indicador TPMS está "ON" pero la presión real de los neumáticos es superior a 30 psi, que es el límite de seguridad. En caso de que no se haya dado cuenta, el motor de análisis trabaja a partir de las mismas matrices JSON modeladas en la aplicación, por lo que no hay transformación de los datos que se analizan en su forma JSON natural. #NoETLparaNoSQL
Configuración del controlador SQL
Ahora que ya has empezado a explorar los datos, vamos a visualizarlos en un cuadro de mando en tiempo real. La mayoría de las herramientas de BI desplegadas en la empresa requieren una interfaz SQL; Couchbase funciona con CData para proporcionar una interfaz SQL. Para probarlo, puede descargar el controlador CData.
En esta entrada del blog, voy a crear una conexión ODBC para conectar con Couchbase Analytics. Estoy usando un Mac y he utilizado el Gestor ODBC para definir un DSN de sistema con las siguientes propiedades:
Creación de una visualización en tiempo real en Tableau
Permítanme ahora recorrer los pasos para conectar Tableau con Couchbase Analytics.
- Abrir Tableau escritorio y seleccione "Conectar a otra base de datos (ODBC)".
- Elija la opción para conectarse utilizando un DSN (nombre de fuente de datos).
- Elija el DSN creado en el paso anterior.
- Haga clic en el botón "Iniciar sesión" y accederá a la interfaz del libro de trabajo de Tableau.
- En la parte izquierda de la pantalla, seleccione "CData" como base de datos.
- Haga clic en el menú desplegable "Seleccionar esquema" y haga clic en el icono de búsqueda y elija Couchbase.
- Haga clic en el icono de búsqueda de la sección de tablas.
- Cree un libro de trabajo y elija la dimensión como tipo de modelo y medida para el recuento de VIN distintos para crear un gráfico sencillo.
Ahora puede mejorar el cuadro de mandos básico para cambiar la visualización y añadir funciones de filtrado.
Conclusión
Conseguir análisis operativos en tiempo real es un imperativo empresarial, pero para ello las organizaciones se enfrentan a obstáculos como:
- el aprovisionamiento de datos en arquitecturas de datos heredadas tarda semanas, o incluso meses
- la falta de competencias necesarias para modernizar su departamento tradicional de TI
- dificultades para justificar la modernización en ausencia de un retorno rápido y directo de la inversión
- conocimientos limitados debido a la complejidad de los informes personalizados y a la falta de cuadros de mando operativos.
Análisis de Couchbase aborda estas preocupaciones y hace que sea realmente fácil ejecutar cargas de trabajo operativas y analíticas híbridas en un único clúster de Couchbase. La arquitectura híbrida de Couchbase permite el análisis en tiempo real de datos JSON generados por aplicaciones operativas y evita la pesada carga de los lagos de datos, los almacenes de datos y los complejos procesos ETL.