Descripción del procesamiento analítico transaccional híbrido con Azure Synapse Link

Completado

El procesamiento analítico y transaccional híbrido permite a las empresas realizar análisis mediante un sistema de bases de datos que se considera que proporciona capacidades transaccionales sin afectar al rendimiento del sistema. Esto, a su vez, permite a las organizaciones usar una base de datos para satisfacer las necesidades tanto transaccionales como analíticas y admitir el análisis de los datos operativos casi en tiempo real para tomar decisiones sobre la información que se analiza.

Por ejemplo, Tailwind Traders usa Azure Cosmos DB para almacenar datos de perfil de usuario desde su sitio de comercio electrónico. El almacén de documentos NoSQL proporcionado por la API SQL de Azure Cosmos DB proporciona los conocimientos de la administración de sus datos mediante la sintaxis de SQL, a la vez que permite leer y escribir los archivos a una escala global y masiva.

Aunque en Tailwind Traders están satisfechos con las capacidades y el rendimiento de Azure Cosmos DB, les preocupa el costo de ejecutar un gran volumen de consultas analíticas en varias particiones (consultas entre particiones) desde su almacenamiento de datos. Quieren acceder de forma eficaz a todos los datos sin necesidad de aumentar las unidades de solicitud (RU) de Azure Cosmos DB. Han examinado las opciones para extraer datos de sus contenedores al lago de datos a medida que cambian, mediante el mecanismo de fuente de cambios de Azure Cosmos DB. El problema de este enfoque es el servicio adicional y las dependencias de código, así como el mantenimiento a largo plazo de la solución. Podrían realizar exportaciones masivas de una canalización de Synapse, pero después no tendrían la información más actualizada en un momento dado.

Decide habilitar Azure Synapse Link para Cosmos DB y el almacén analítico en sus contenedores de Azure Cosmos DB. Con esta configuración, todos los datos transaccionales se almacenan automáticamente en un almacén de columnas aislado por completo. Este almacén permite realizar análisis a gran escala de los datos operativos en Azure Cosmos DB, sin que esto afecte a las cargas de trabajo transaccionales ni se incurra en costos de unidades de solicitud (RU). Azure Synapse Link para Cosmos DB crea una estrecha integración entre Azure Cosmos DB y Azure Synapse Analytics, lo que permite a Tailwind Traders ejecutar análisis casi en tiempo real de sus datos operativos sin ETL y con un aislamiento de rendimiento completo de las cargas de trabajo transaccionales.

Mediante la combinación de la escala distribuida del procesamiento transaccional de Cosmos DB con el almacén analítico integrado y la potencia informática de Azure Synapse Analytics, Azure Synapse Link habilita una arquitectura de procesamiento analítico y transaccional híbrido (HTAP) con la que optimizar los procesos empresariales de Tailwind Traders. Esta integración elimina los procesos ETL, lo que permite a los analistas de negocios, ingenieros y científicos de datos disponer de un autoservicio y ejecutar canalizaciones de inteligencia empresarial, análisis y aprendizaje automático sobre estos datos operativos casi en tiempo real.

Antes de poder crear un contenedor de Azure Cosmos DB con un almacén analítico, primero debemos habilitar Azure Synapse Link.

  1. Vaya a Azure Portal (https://portal.azure.com) y seleccione la cuenta de Azure Cosmos DB.

    Navigate to Azure Cosmos DB

  2. Seleccione Características en el menú de la izquierda (1) y, después, Azure Synapse Link (2).

    Enable Synapse Link

  3. Seleccione Habilitar.

    Enable Synapse Link screen

Creación de un contenedor de Azure Cosmos DB

Tailwind Traders tiene un contenedor de Azure Cosmos DB denominado OnlineUserProfile01. Dado que se ha habilitado la característica Azure Synapse Link una vez creado el contenedor, no se puede habilitar el almacén analítico en el contenedor. Se creará un nuevo contenedor que tenga la misma clave de partición y se habilitará el almacén analítico.

Después de crear el contenedor, crearemos una nueva canalización de Synapse para copiar los datos del contenedor OnlineUserProfile01 al nuevo.

  1. Seleccione Explorador de datos en el menú de la izquierda.

    Launch Data Explorer

  2. Seleccione Nuevo contenedor.

    Select a container in Data Explorer

  3. En Id. de base de datos, seleccione Usar existente y, después, seleccione CustomerProfile (1). Escriba UserProfileHTAP para el Id. de contenedor (2) y, después, escriba /userid para la Clave de partición (3). En Rendimiento, seleccione Escalado automático (4) y, después, escriba 4000 para el valor Max RU/s (RU máx.) (5). Por último, establezca Analytical store (Almacén analítico) en Activado (6) y seleccione Aceptar.

    Add a container

    Aquí se establece el valor de la clave de partición en userId, ya que es un campo que se usa con más frecuencia en las consultas y contiene una cardinalidad (número de valores únicos) relativamente alta para un buen rendimiento de las particiones. Establecemos el rendimiento en escalado automático con un valor máximo de 4000 unidades de solicitud (RU). Esto significa que el contenedor tendrá un mínimo de 400 RU asignadas (un 10 % del número máximo) y se escalará hasta un máximo de 4000 cuando el motor de escalado detecte una demanda lo suficientemente alta como para garantizar el aumento del rendimiento. Por último, habilitamos el almacén analítico en el contenedor, lo que nos permite sacar el máximo partido de la arquitectura de procesamiento analítico y transaccional híbrido (HTAP) de Synapse Analytics.

    Echemos un vistazo rápido a los datos que se copiarán en el nuevo contenedor.

  4. Expanda el contenedor OnlineUserProfile01 bajo la base de datos CustomerProfile y, después, seleccione Elementos (1). Seleccione uno de los documentos (2) y vea su contenido (3). Los documentos se almacenan en formato JSON.

    View container items

Con Azure Synapse Link habilitado y el aprovisionamiento del almacén analítico, podrá consultar directamente el almacén analítico desde Azure Synapse Analytics, o bien crear una canalización para copiar su contenido.