Documentos de Académico
Documentos de Profesional
Documentos de Cultura
18
Analytics para
arquitectos
Azure Synapse Analytics es una evolución innovadora de Azure SQL Data Warehouse.
Azure Synapse es un servicio de análisis de datos integrado y totalmente administrado que
combina almacenamiento de datos, integración de datos y procesamiento de Big Data con
aceleración del tiempo de obtención de conocimientos para formar un único servicio.
602 | Azure Synapse Analytics para arquitectos
En este capítulo, examinaremos Azure Synapse Analytics al abordar los siguientes temas:
• Cuestiones de seguridad
Ambos sistemas de análisis son cruciales para las empresas, ya que funcionan de manera
independiente uno de otro. Mientras tanto, las empresas necesitan obtener conocimientos
de todos sus datos organizativos para seguir siendo competitivas y para innovar sus
procesos con el fin de obtener mejores resultados.
Los arquitectos que tengan que crear sus propias canalizaciones de datos integrales
deberán seguir los pasos que se describen a continuación:
2. Cargar todos estos orígenes de datos en un data lake para su procesamiento posterior
Hasta ahora, cada uno de estos pasos ha requerido una herramienta diferente. No hace falta
decir que con tantos servicios, aplicaciones y herramientas diferentes disponibles en el
mercado, elegir los más adecuados puede ser una tarea abrumadora.
Hay numerosos servicios disponibles para ingerir, cargar, preparar y servir datos. También
hay innumerables servicios para limpiar los datos basados en el lenguaje de elección del
desarrollador. Además, algunos desarrolladores pueden preferir usar SQL, otros quizá
deseen usar Spark, mientras que otros preferirán usar entornos sin necesidad de programar
para transformar los datos.
Azure Synapse Analytics resuelve estos y otros problemas. Simplifica todo el patrón
de almacenamiento de datos moderno y permite a los arquitectos centrarse en crear
soluciones de análisis integrales en un entorno unificado.
• Análisis SQL con grupos (aprovisionados por completo) y a petición (sin servidor).
Para acceder a todas las funcionalidades mencionadas, Azure Synapse Studio proporciona
una única interfaz de usuario web unificada.
Este servicio único de datos integrado es ventajoso para las empresas, ya que acelera la
distribución de BI, IA, machine learning, Internet de las cosas y aplicaciones inteligentes.
Ventas
60 % Computación de
1000c DWU
Marketing 40 %
40 %
In-Memory local + Caché SSD
Almacén de datos
Azure Synapse proporciona una experiencia de interfaz de usuario web unificada para las
tareas de preparación de datos, administración de datos, almacenamiento de datos, análisis de
Big Data, BI e IA, conocida como Synapse Studio. Junto con los espacios de trabajo de Synapse,
Synapse Studio es un entorno ideal para que ingenieros de datos y científicos de datos
compartan sus soluciones de análisis y colaboren en ellas, tal como se muestra en la Figura 18.2:
Funcionalidades:
• Almacén de datos rápido, seguro y altamente flexible, líder del sector en rendimiento
y seguridad
• Capacidad para explorar Azure Data Lake Storage y almacenes de datos mediante
la popular sintaxis T-SQL utilizando consultas SQL y SQL a petición (sin servidor)
Características clave:
• Creación y operativización de canalizaciones para la ingesta y orquestación de datos.
• Exploración directa de los datos de Azure Data Lake Storage, de un almacén de datos
o de cualquier conexión externa al espacio de trabajo mediante Synapse Studio.
• SQL a petición proporciona consultas SQL sin servidor para facilitar la exploración
y el análisis de datos en Azure Data Lake Storage sin ningún tipo de configuración
o mantenimiento de la infraestructura.
• Ofrece una profunda integración entre Spark y SQL, lo que permite a los ingenieros de
datos preparar datos en Spark, escribir los resultados procesados en un grupo de SQL
y usar cualquier combinación de Spark con SQL para fines de ingeniería y análisis de
datos, con compatibilidad integrada con Azure Machine Learning.
Plataforma
• Admite procesos aprovisionados y sin servidor. Ejemplos de procesos aprovisionados
serían los procesos de SQL y de Spark.
• Por otro lado, los procesos sin servidor permiten a los equipos usar el servicio
a petición sin necesidad de aprovisionar ni administrar ninguna infraestructura
subyacente.
En la siguiente sección, vamos a ver otras características de Azure Synapse, como Apache
Spark para Synapse, Synapse SQL, SQL a petición, canalizaciones de Synapse y Azure
Synapse Link para Cosmos DB.
Si usas Spark en Azure Synapse Analytics, este se proporciona como oferta de software
como servicio. Por ejemplo, puedes usar Spark sin configurar ni administrar tus propios
servicios, como una red virtual. Azure Synapse Analytics se encargará de la infraestructura
subyacente. Esto te permite usar Spark en tu entorno Azure Synapse Analytics con carácter
inmediato.
Synapse SQL
Synapse SQL permite el uso de T-SQL para consultar y analizar datos. Hay dos modelos
entre los que elegir:
SQL a petición
SQL a petición proporciona consultas SQL sin servidor. Esto facilita la exploración y el
análisis de datos en Azure Data Lake Storage sin ninguna configuración ni mantenimiento
de infraestructura:
Entorno de ejecución Entorno de ejecución Entorno de ejecución Entorno de ejecución Entorno de ejecución
SO SO SO SO SO
Administrado por ti
Tabla 18.1: Comparación entre distintas infraestructuras
Características clave:
• Los analistas pueden centrarse en analizar los datos sin preocuparse de administrar
ningún tipo de infraestructura.
• Consigue una integración sin fisuras con el grupo de SQL Analytics y Spark mediante
sincronización de metadatos y conectores nativos.
Canalizaciones de Synapse
Las canalizaciones de Synapse permiten a los desarrolladores crear flujos de trabajo
integrales para escenarios de transferencia de datos y procesamiento de datos. Azure
Synapse Analytics se sirve de la tecnología de Azure Data Factory (ADF) para proporcionar
características de integración de datos. Las características clave de ADF que son esenciales
para la canalización del almacén de datos moderno están disponibles en Azure Synapse
Analytics. Todas estas características se distribuyen dentro de un modelo de seguridad
común con control de acceso basado en roles (RBAC) en el espacio de trabajo de Azure
Synapse Analytics.
Características clave:
• Servicios de plataforma integrados para administración, seguridad, supervisión
y administración de metadatos.
• Integración nativa entre Spark y SQL Utiliza una única línea de código para leer
y escribir con Spark desde/en SQL Analytics.
• Capacidad para crear una tabla de Spark y consultarla de forma inmediata con SQL
Analytics sin definir un esquema.
• Entorno "libre de claves". Con inicio de sesión único y paso a través de Azure Active
Directory no se necesita ninguna clave ni inicio de sesión para interactuar con
Azure Data Lake Storage (ADLS)/bases de datos.
En la siguiente sección, vamos a ver Azure Synapse Link para Cosmos DB.
Rendimiento
Azure Synapse Analytics ofrece un rendimiento óptimo de la base de datos relacional
mediante técnicas como el procesamiento paralelo masivo (MPP) y el almacenamiento
en caché automático in-memory. Para obtener más información, revisa la arquitectura de
Azure Synapse Analytics (https://docs.microsoft.com/azure/synapse-analytics/sql-data-
warehouse/massively-parallel-processing-mpp-architecture).
Velocidad
Azure es una plataforma en el cloud de alta escalabilidad y seguridad a nivel mundial. Ofrece
muchas características de seguridad, como Azure Active Directory, RBAC, identidades
administradas y puntos de conexión privados administrados. Azure Synapse Analytics,
que reside dentro del ecosistema de Azure, hereda todas las ventajas antes mencionadas.
Infraestructura administrada
Escalabilidad
El volumen de datos en un almacén de datos suele crecer conforme pasa el tiempo y
cuando se recopila el historial. Azure Synapse Analytics puede escalar para adaptarse
a este crecimiento al agregar recursos de forma incremental a medida que aumentan
los datos y la carga de trabajo.
Migrar los sistemas antiguos existentes a Azure Synapse Analytics | 613
Ahorro económico
La ejecución de un centro de datos heredado on-premises es costosa (teniendo en cuenta
los costes de servidores y hardware, las redes, el espacio físico de la estancia, la electricidad,
la refrigeración y el personal). Estos gastos se pueden minimizar de forma sustancial con
Azure Synapse Analytics. Con la separación de las capas de computación y almacenamiento,
Azure Synapse ofrece una relación precio-rendimiento muy lucrativa.
Azure Synapse Analytics te ofrece una verdadera escalabilidad del cloud con pago por
uso sin necesidad de una reconfiguración complicada conforme aumenten tus datos
o tus cargas de trabajo.
Ahora que has aprendido por qué resulta beneficioso migrar a Azure Synapse Analytics,
comenzaremos nuestro análisis del proceso de migración.
Preparación
• Definir el ámbito de lo que se va a migrar.
• Crear un inventario de datos y procesos para la migración.
• Definir los cambios en el modelo de datos (si los hay).
• Definir el mecanismo de extracción de datos de origen.
• Identificar las herramientas y servicios adecuados de Azure (y de terceros) que se usarán.
• Formar al personal desde el principio en la nueva plataforma.
• Configurar la plataforma de destino de Azure.
Migración
• Empezar poco a poco y de forma sencilla.
• Automatizar siempre que sea posible.
• Aprovechar las herramientas y características integradas de Azure para reducir el
esfuerzo de migración.
• Migrar metadatos para tablas y vistas.
• Migrar los datos históricos que se deben mantener.
• Migrar o refactorizar los procedimientos almacenados y los procesos empresariales.
• Migrar o refactorizar los procesos de carga incremental ETL/ELT.
614 | Azure Synapse Analytics para arquitectos
Después de la migración
• Supervisar y documentar todas las etapas del proceso.
• Usar la experiencia adquirida para crear una plantilla para futuras migraciones.
Estrategia lift-and-shift
Para la estrategia lift-and-shift, el modelo de datos existente se migra sin cambios a la
nueva plataforma de Azure Synapse Analytics. Esto se hace para minimizar el riesgo y el
tiempo necesario para la migración reduciendo el ámbito de los cambios al mínimo.
Estrategia de rediseño
En escenarios en los que el almacén de datos heredado ha evolucionado con el tiempo,
puede que sea esencial rediseñarlo para mantener los niveles de rendimiento óptimos
o admitir nuevos tipos de datos. Esto podría incluir un cambio en el modelo de datos
subyacente.
Para reducir el riesgo al mínimo, se recomienda migrar primero mediante la estrategia
lift-and-shift y, a continuación, modernizar gradualmente el modelo de datos de
almacenamiento de datos en Azure Synapse Analytics mediante la estrategia de rediseño.
Un cambio completo en el modelo de datos aumentará los riesgos porque afectará al origen
en los trabajos de ETL de almacenamiento de datos y en los data marts en niveles inferiores.
En la siguiente sección, haremos algunas recomendaciones sobre cómo reducir la
complejidad de tu almacén de datos heredado existente antes de migrar.
Migrar los sistemas antiguos existentes a Azure Synapse Analytics | 615
• Eliminar y archivar las tablas no utilizadas antes de migrar: evita migrar datos que ya
no se utilicen. Esto ayudará a reducir el volumen general de datos que se va a migrar.
• Convertir data marts físicos en data marts virtuales: minimiza lo que tienes que
migrar, reduce el coste total de propiedad y mejora la agilidad.
• Mayor agilidad
• Fácil de cambiar
• Recuento de filas
• Tipos de datos
• Vistas
• Índices
• Dependencias de objetos
• Uso de objetos
Migrar los sistemas antiguos existentes a Azure Synapse Analytics | 617
• Funciones: funciones "out of the box" y funciones definidas por el usuario (UDF)
• Procedimientos almacenados
• Requisitos de escalabilidad
• Previsiones de crecimiento
Con el inventario completado, ahora puedes tomar decisiones sobre el ámbito del esquema
que deseas migrar. Esencialmente, hay cuatro opciones para el ámbito de la migración del
esquema de almacenamiento de datos heredado:
1. Migrar un data mart a la vez:
Figura 18.5: Migración de todos los data marts a la vez y, después, del almacén de datos
618 | Azure Synapse Analytics para arquitectos
Ten en cuenta a la hora de elegir tu opción que el objetivo es lograr un diseño de base de
datos física que coincida o supere tu sistema de almacenamiento de datos heredado actual
en rendimiento y preferiblemente a un menor coste.
Migrar los sistemas antiguos existentes a Azure Synapse Analytics | 619
Para resumir, estas son algunas de las recomendaciones para la migración de esquemas:
• Plantearse el uso de data marts virtuales para reducir o eliminar el número de data
marts físicos.
Los pasos para migrar los datos históricos son los siguientes:
En la siguiente sección, hablaremos sobre cómo migrar procesos ETL existentes a Azure
Synapse Analytics.
Migrar los sistemas antiguos existentes a Azure Synapse Analytics | 621
Herramienta • Seguir usando la herramienta ETL • Evita tener que volver a desarrollar.
de ETL gráfica existente y cambiar el destino
(por ejemplo, a Azure Synapse. • Minimiza el riesgo y la migración
Informatica es más rápida.
• Es posible migrar a una versión
o Talend)
de Azure de la herramienta ETL
existente y portar los metadatos
para ejecutar trabajos de ELT
en Azure asegurándose de habilitar
el acceso a los orígenes de datos
on-premises.
• Controlar la ejecución de los
servicios ETL mediante ADF.
Software de • Seguir usando la herramienta ETL • Evita tener que volver a desarrollar.
automatización de existente, cambiando el destino
almacenamiento y el almacenamiento provisional • Minimiza el riesgo y la migración
de datos a Azure Synapse. es más rápida.
Sin embargo, a veces este no es el caso. En esta situación, se debe adoptar una estrategia
diferente:
• Identificar los informes de alta prioridad que se desea migrar primero.
• Emplear las estadísticas de uso para identificar los informes que nunca se usan.
• Evitar la migración de elementos que ya no estén en uso.
• Una vez que hayas creado la lista de informes para migrar, sus prioridades y los informes
que no se usan y se deben omitir, confirma esta lista con las partes interesadas.
• Para los informes que estás migrando, identifica las incompatibilidades pronto para
calibrar el proceso de migración.
• Ten en cuenta la virtualización de datos para proteger las herramientas y aplicaciones
de BI de los cambios estructurales en el modelo de datos del almacén de datos y/o
data mart que se pueden producir durante la migración.
Tabla 18.4: Tipos de datos no admitidos y soluciones alternativas adecuadas para Azure Synapse Analytics
624 | Azure Synapse Analytics para arquitectos
En las secciones siguientes, abarcaremos por completo cómo resolver otras incompatibilidades
comunes de SQL durante la migración desde un almacén de datos heredado a Azure Synapse
Analytics.
Tabla 18.6: Diferencias del DDL de SQL entre los sistemas heredados y Azure Synapse
Incompatibilidades y soluciones de SQL comunes | 627
A continuación, hablaremos sobre las diferencias y soluciones del DCL de SQL entre los
sistemas de almacenamiento de datos heredados y Azure Synapse Analytics.
[Create] Solo para el uso del sistema. Los usuarios CREATE INDEX
Index no pueden crear índices.
Abort Permite al usuario cancelar sesiones. Se aplica a grupos y usuarios. KILL DATABASE
CONNECTION
Delete Permite al usuario eliminar filas de tabla. Se aplica solo a tablas. ELIMINAR
Drop Permite al usuario colocar objetos. Se aplica a todos los tipos de objeto. DROP
GenStats Permite al usuario generar estadísticas sobre tablas o bases de datos. Se gestiona
El usuario puede ejecutar el comando GENERATE STATISTICS. automáticamente
en Azure Synapse
Groom Permite al usuario recuperar espacio en disco para las filas eliminadas Se gestiona
u obsoletas y reorganizar una tabla por las claves de organización automáticamente
o migrar datos de tablas que tienen varias versiones almacenadas. en Azure Synapse
Insert Permite al usuario insertar filas en una tabla. Se aplica solo a tablas. INSERTO
List Permite al usuario mostrar un nombre de objeto, ya sea en una lista LIST
o de otra manera. Se aplica a todos los objetos.
Select Permite al usuario seleccionar (o consultar) filas dentro de una tabla. SELECT
Se aplica a tablas y vistas.
Truncate Permite al usuario eliminar todas las filas de una tabla. Se aplica TRUNCATE
solo a tablas.
Update Permite al usuario modificar filas de tabla. Se aplica solo a tablas. ACTUALIZAR
Tipos de datos • No compatibles con Azure Synapse • Almacena datos geoespaciales, como
geoespaciales latitud/longitud, y formatos populares,
como Well-Known Text (WKT)
y Well-Known Binary (WKB), en
columnas VARCHAR o VARBINARY
y a los que acceden directamente las
herramientas de cliente geoespacial.
En esta sección, hemos hablado sobre los problemas de migración habituales que podrían
encontrar los arquitectos durante un proyecto de migración y las posibles soluciones. En la
siguiente sección, vamos a echar un vistazo a las cuestiones de seguridad que un arquitecto
debe tener en cuenta.
Cuestiones de seguridad
La protección de tus activos de datos es primordial en cualquier sistema de almacenamiento
de datos. Al planificar un proyecto de migración de almacenamiento de datos, también se
deben tener en cuenta la seguridad, la administración de acceso de los usuarios, las copias
de seguridad y las restauraciones. Por ejemplo, el cifrado de datos puede ser obligatorio
para las normativas del sector y de la administración, como HIPAA, PCI y FedRAMP,
así como en sectores no regulados.
Azure incluye muchas características y funciones de serie que tradicionalmente tendrían
que estar construidas a la medida en productos de almacenamiento de datos heredados.
Azure Synapse admite el cifrado de datos en reposo y datos en movimiento de serie.
• Azure Data Storage también puede cifrar automáticamente los datos que no son de
la base de datos.
Datos en movimiento
Todas las conexiones a Azure Synapse Analytics se cifran de forma predeterminada,
mediante protocolos estándar del sector como TLS y SSH.
Además, el enmascaramiento dinámico de datos (DDM) se puede usar para ocultar los
datos de clases determinadas de usuarios en función de las reglas de enmascaramiento
de datos.
En la última sección de este capítulo, revisaremos algunas de las herramientas que los
arquitectos pueden elegir para que les ayuden a migrar desde sistemas de almacenamiento
de datos heredados a Azure Synapse Analytics.
Herramientas que te ayudarán a migrar a Azure Synapse Analytics | 633
• ADF
Empecemos.
ADF
ADF es un servicio de integración de datos híbrido, de pago por uso y totalmente administrado
para el procesamiento de ETL a escala del cloud. Ofrece las siguientes características:
• Puedes seleccionar la base de datos on-premises que contiene las tablas que deseas
exportar a Azure Synapse. A continuación, puedes seleccionar las tablas que deseas
migrar y migrar el esquema.
• Genera automáticamente el código T-SQL necesario para crear una base de datos
vacía equivalente y tablas en Azure Synapse. Una vez que proporciones los detalles de
conexión a Azure Synapse, puedes ejecutar el T-SQL generado para migrar el esquema.
• Después de crear el esquema, puedes usar la utilidad para migrar los datos. Esto
exporta los datos desde el almacén de datos on-premises basado en SQL Server y
genera comandos Bulk Copy Program (BCP) para cargar esos datos en Azure Synapse.
Azure ExpressRoute
Azure ExpressRoute te permite establecer conexiones privadas entre tus centros de datos
y Azure sin tener que pasar por el Internet público. Ofrece las siguientes características:
• Baja latencia
AzCopy
AzCopy es una herramienta de línea de comandos para copiar archivos y blobs a/desde
cuentas de almacenamiento. Ofrece las siguientes características:
• PolyBase
• BCP
• API SqlBulkCopy
• SQL estándar
PolyBase proporciona la carga de datos masivos más rápida y escalable en Azure Synapse
Analytics. Ofrece las siguientes características:
• Puede leer desde archivos planos en Azure Blob Storage o desde orígenes de datos
externos a través de conectores
• Puede definir una tabla de almacenamiento provisional como tipo amontonada para
una carga rápida
BCP
BCP se puede usar para importar y exportar datos desde cualquier entorno de SQL Server,
incluido Azure Synapse Analytics. Ofrece las siguientes características:
API SqlBulkCopy
La API SqlBulkCopy es la API equivalente a la funcionalidad de BCP. Ofrece las siguientes
características:
Resumen
Azure Synapse Analytics es un servicio de análisis ilimitado con un tiempo para obtener
conocimiento sin precedentes que acelera la entrega de BI, IA y aplicaciones inteligentes
para las empresas. Disfrutarás de muchas ventajas al migrar tu almacén de datos heredado
a Azure Synapse Analytics, incluidos el rendimiento, la velocidad, la seguridad y el
cumplimiento mejorados, la elasticidad, la infraestructura administrada, la escalabilidad
y el ahorro de costes.
Resumen | 637
Con Azure Synapse, los profesionales de datos con distintos conocimientos pueden
colaborar, administrar y analizar sus datos más importantes con facilidad, y todo ello desde
un mismo servicio. La integración de Apache Spark con el potente motor SQL de confianza
y la posibilidad de integrar y administrar datos sin necesidad de programar demuestran que
Azure Synapse está pensado para todos los profesionales de datos.
Este capítulo ha proporcionado las consideraciones de la arquitectura y la metodología de
alto nivel necesarias para preparar y ejecutar la migración de un sistema de almacenamiento
de datos heredado existente a Azure Synapse Analytics.
Los proyectos de migración de datos exitosos comienzan con un plan bien diseñado.
Un plan eficaz explica los numerosos componentes que hay que tener en cuenta, prestando
especial atención a la arquitectura y la preparación de los datos.
Después de haber migrado correctamente a Azure Synapse, puedes explorar tecnologías de
Microsoft adicionales en el rico ecosistema analítico de Azure para seguir modernizando tu
arquitectura de almacenamiento de datos.
• Crea canalizaciones analíticas en ADF para analizar los datos en lote y en tiempo real.