Introducción a los conjuntos de datos externos

Couchbase se complace en anunciar sus nuevos "Conjuntos de datos externos". Servicios analíticos en el último Lanzamiento de Couchbase Server 6.6. Los conjuntos de datos externos permiten a los clientes acceder a datos almacenados externamente en tiempo real desde Amazon Web Services (AWS) Simple Storage Service (S3) y combinar datos residentes en S3 con datos existentes de Couchbase para su análisis.

Caso práctico del cliente

Algunos clientes utilizan AWS S3 para reducir los costos de almacenamiento y almacenar datos (p. ej., varios años de datos históricos, datos empresariales sin conexión para aprendizaje automático, revisiones de productos, etc.). Han expresado su deseo de combinar, consultar y utilizar los datos de S3 en tiempo real para poner estos datos a disposición de los usuarios empresariales para el análisis. Más información sobre otros casos de uso de Analytics aquí.

¿Cómo funcionan los conjuntos de datos externos?

Los conjuntos de datos externos ofrecen la posibilidad de consultar y analizar dinámicamente datos que residen en AWS S3, lo que permite a los usuarios combinar fácilmente datos en tiempo real desde dentro y fuera de sus nodos de análisis de Couchbase. Esto se consigue en tres sencillos pasos:

  1. Configure un enlace S3 mediante Llamada a la API REST o el interfaz de línea de comandos (CLI)
  2. Crear un conjunto de datos externo en el enlace S3
  3. Consultar el conjunto de datos mediante SQL (o su herramienta BI favorita)

Veamos un ejemplo sencillo. iMaz, una empresa de comercio electrónico, vende productos de consumo online. Sus datos de pedidos, productos y usuarios se almacenan en un clúster de Couchbase con servicios de datos y análisis (en conjuntos separados de nodos del clúster). Utilizan el servicio Analytics para ejecutar consultas ad hoc y complejas para analizar su negocio. iMaz también almacena las reseñas de sus productos en AWS S3, y les gustaría combinar y analizar los 3 productos más valorados utilizando el servicio Couchbase Analytics.

Muestra de datos del producto:

Muestra de datos de revisión:

Sigamos los tres pasos anteriores con un ejemplo de código de configuración junto con una consulta SQL++.

Paso 1: Configurar el enlace S3

Crearemos un enlace S3 utilizando un archivo Llamada a la API REST. (Como alternativa, puede utilizar la función CLI para crear enlaces S3.). Tendremos que proporcionar:

  • Nombre de host del servicio de análisis
  • Credenciales de usuario de Analytics
  • Nombre del enlace S3 (en este caso myS3Link)
  • Nombre del dataverse (si es diferente del predeterminado)
  • Tipo de enlace (S3)
  • ID de la clave de acceso requerida de AWS S3
  • Clave de acceso secreta requerida de AWS S3
  • Región requerida de AWS S3 (por ejemplo, us-west-2)

Paso 2: Crear un conjunto de datos externo

Utilizando el banco de trabajo Analytics, crearemos ahora un conjunto de datos externo denominado "S3productreviews". Tendremos que especificar:

  • Nombre del bucket S3
  • Nombre del dataverse (si es diferente del predeterminado) y nombre del bucket S3 (en este caso cb-analytics-6.6-demo)
  • Ubicación del directorio (opcionalmente) dentro del bucket desde el que se leerán y recopilarán recursivamente los archivos (en este caso, las reseñas de productos se almacenan en una carpeta "reseñas").
  • Formato de archivo (en este caso utilizaremos JSON) con la posibilidad de especificar un patrón de búsqueda (en este caso *.json indica que se incluirán todos los archivos JSON al consultar los datos).

En la actualidad, la función de conjuntos de datos externos admite las funciones json, csv (valores separados por comas), y tsv (valores separados por tabuladores)  incluidos los archivos comprimidos con gzip (los nombres de archivo terminan en .gz o .gzip). Los formatos csv y tsv requieren que se especifique una definición de tipo en línea (más información al respecto en breve). En futuras versiones se admitirán otros formatos de archivo. Puede obtener más información al respecto aquí.

Paso 3: Consulta con SQL

Como último paso, ahora podemos ejecutar la consulta SQL++ que se indica a continuación (que tiene exactamente el mismo aspecto que SQL :)). Une el conjunto de datos de productos existentes de Couchbase Analytics Service y los datos de reseñas de productos de AWS S3 para obtener los 3 productos mejor valorados.

Aquí están los resultados de la consulta json:

Esto es genial: ahora podemos combinar y analizar datos externos ubicados en AWS S3 desde Couchbase Analytics Service. Fíjate en los pocos pasos que hemos necesitado para poder analizar nuestros datos; no ha sido necesario ningún ETL, ¡y los datos han estado disponibles inmediatamente!

Ahora te estarás preguntando: ¿Cómo habría funcionado esto si el formato del archivo de revisiones de S3 hubiera sido de tipo csv en lugar de JSON? La respuesta es sencilla; simplemente habría construido su conjunto de datos externo en consecuencia. A continuación, mostramos el aspecto que tendría la sentencia create external dataset anterior si fuera compatible con csv:

Observe cómo la sentencia create incluye ahora información de tipo en línea. Esto es necesario para indicar a Analytics cómo interpretar los datos csv (por ejemplo, no sólo como cadenas).

La consulta SQL++ sigue siendo exactamente la misma. Así es, ¡sin ningún cambio! Los conjuntos de datos externos son fáciles de configurar, flexibles y sencillos de utilizar gracias a la potencia del lenguaje SQL++. Los usuarios pueden desarrollar consultas ad hoc complejas para explorar más a fondo los datos, responder a nuevas preguntas de negocio y combinar datos externos con datos de Enlaces remotos para traer también otras fuentes de datos Couchbase.

Beneficios

Estas son las principales ventajas de utilizar conjuntos de datos externos:

  1. Enriquecimiento de datos. Los datos de Couchbase ahora se pueden enriquecer con información adicional obtenida de archivos que residen en el lago de datos existente basado en S3 de una empresa.
  2. Acceso dinámico a los datos. Los datos más recientes se pueden recuperar, transmitir, combinar y analizar dinámicamente desde cualquier bucket de S3 en cualquier región de AWS durante la ejecución de consultas de Analytics.
  3. Procesamiento paralelo de consultas. Los usuarios pueden configurar y organizar el acceso a los datos de S3 mediante la arquitectura de procesamiento de consultas en paralelo masivo (MPP) de Analytics para responder con rapidez a las consultas con datos externos.

Resumen

Los conjuntos de datos externos desbloquean el valor de los datos externos en vivo y archivados que residen en los lagos de datos basados en S3. Los usuarios pueden combinar y analizar datos en tiempo real, procedentes tanto de AWS S3 como de Couchbase Analytics Service. Esto permite un análisis de datos más rápido y exhaustivo y una toma de decisiones ágil.

Recursos

Más información sobre las declaraciones de los conjuntos de datos externos aquí. Regístrese en aquí para nuestro próximo seminario web "Novedades de la versión 6.6 de Couchbase Server".

Explorar los recursos de Couchbase Server 6.6

Blogs

Documentos y tutoriales

Páginas web y seminarios web

Novedades de Couchbase Server 6.6

Novedades de Couchbase Server 6.6

Nuevas funciones de Couchbase Server 6.6: análisis, copias de seguridad, consultas y mucho más

Mejoras en los eventos (temporizadores, controladores y estadísticas)

Notas de la versión de Couchbase Server 6.6

Servicio de análisis Couchbase

Enlaces remotos - Analice su empresa con Couchbase Analytics

Pruebe el servicio Couchbase Index Advisor

Novedades de Couchbase Server (Página del producto)

Conjuntos de datos externos - Amplíe su alcance con Couchbase Analytics

Configuración de enlaces remotos de Analytics y S3 mediante la API REST

Comparar ediciones

Anuncio de Flex Index con Couchbase

Creación de conjuntos de datos externos mediante el lenguaje de definición de datos (DDL)

 

Introducción a las copias de seguridad en Object Store (S3)

Configuración de enlaces remotos de Analytics y S3 mediante CLI

 

Importar documentos con Web Admin Console

   

Gracias a Till Westmann como coautor y a Michael Carey por sus valiosas aportaciones y la revisión de este post.

till westman engineering director analytics

 

Coautor

Till Westmann, Director de Ingeniería de Couchbase

Till Westmann es Director de Ingeniería en Couchbase y trabaja en el Servicio de Análisis. Antes de unirse a Couchbase, Till desarrolló software de gestión de datos en Oracle, 28msec, SAP, BEA Systems, XQRL y Xyleme. Es miembro de la Apache Software Foundation y Vicepresidente del proyecto Apache AsterixDB. Till es doctor por la Universidad de Mannheim (Alemania).

Autor

Publicado por Idris Motiwala

Idris es Director Principal de Producto, Analítica en Couchbase con más de 20 años de experiencia en diseño, desarrollo y ejecución de productos de software tanto en Fortune 500 como en startups liderando equipos en transformación digital, nube y analítica. Idris tiene una Maestría en Gestión de Tecnología y certificaciones en gestión de productos .

1 Comentarios

  1. ¡Esta es una característica revolucionaria ! ¡Me encanta!

Dejar una respuesta