¿Qué es Azure SQL Data Warehouse?

Microsoft transformó sus servicios de Azure en soluciones en la nube de nivel empresarial que incorporan características de vanguardia como la administración y el análisis de datos.

Microsoft lanzó Azure SQL Data Warehouse cuando tomó la decisión de usar la nube. Microsoft está impulsando Azure SQL Data Warehouse con gran energía. Es un servicio de administración de base de datos flexible que combina características de almacenamiento de datos elásticos con él.

¿Qué es Azure SQL Data Warehouse?

Azure SQL Data Warehouse (ahora llamado Azure Synapse Dedicated SQL Pool), un almacén de datos basado en la nube, le permite crear y entregar un almacén de datos en Microsoft Azure. Azure Data Warehouse puede procesar grandes cantidades de datos relacionales y no relacionales. Ofrece Capacidades de almacenamiento de datos SQL y una plataforma de computación en la nube.

Admite servidores SQL de forma nativa y puede migrar servidores SQL existentes a SQL Data Warehouse. También puede utilizar las mismas consultas y construcciones. Además, los suscriptores tienen acceso instantáneo para escalar, pausar y reducir los recursos de su almacén de datos.

Se utiliza para proporcionar una solución completa de almacenamiento de datos basada en SQL de clase empresarial. También se puede utilizar de las siguientes maneras:

  • Migración de almacenes de datos existentes (locales) a la nube
  • Proporcione una solución de almacenamiento de datos para aplicaciones y servicios que necesitan almacenamiento y recuperación de datos en tiempo de ejecución, como las aplicaciones web.
  • Una solución de almacenamiento de datos híbrido que se conecta al almacenamiento de datos alojado en Azure y SQL Server en el sitio.

La mejor característica de Azure SQL Data Warehouse es su naturaleza elástica. Permite la escalabilidad y la capacidad de administrar los recursos informáticos y de almacenamiento por separado. Crea una plataforma de ganar/ganar donde los usuarios solo pagan por lo que usan y cuando lo usan.

El aspecto informático de Azure SQL Data Warehouse se basa en la Unidad de almacenamiento de datos (DWU), que realiza un seguimiento de los recursos informáticos, como la E/S de almacenamiento y la memoria, en todos los nodos informáticos participantes.

Azure SQL Data Warehouse ofrece una característica de seguridad de conexión. Esto le permite limitar el acceso a direcciones IP específicas o rangos de IP utilizando reglas de firewall. La integración con la autenticación de Azure Active Directory (AAD) le permitirá conectarse a Azure SQL Data Warehouse mediante el uso de identidades de Azure AD.

El cifrado multicapa brinda protección en reposo, en movimiento y en uso para proteger sus datos contra el uso indebido. Hay herramientas adicionales disponibles para auditar y monitorear datos e identificar brechas de seguridad.

Cuando se combina con otras herramientas de Microsoft, Azure SQL Data Warehouse ofrece un rendimiento sin igual, lo cual es una gran ventaja sobre otros servicios comparables en el mercado.

Grupo SQL dedicado de Azure Synapse

Azure Synapse SQL Pool Dedicated SQL Pool (anteriormente Azure SQL Data Warehouse) es un banco de datos de procesamiento paralelo masivo similar a las tecnologías de base de datos escalables basadas en columnas como Snowflake y Amazon Redshift. Parece un servidor SQL tradicional para el usuario final, pero no almacena ni procesa datos en un nodo.

Esto puede mejorar drásticamente el rendimiento de los almacenes de datos que tienen un tamaño superior a unos pocos Terabytes, pero puede haber mejores soluciones para implementaciones más pequeñas.

La arquitectura subyacente es muy diferente de los servidores SQL tradicionales. Esto significa que la sintaxis y los métodos de desarrollo también son diferentes.

Las distribuciones se asignan a los nodos de Compute en un grupo de SQL dedicado. El grupo reasigna sus distribuciones a los nodos de cómputo a medida que compra más recursos de cómputo.

Puede importar grandes cantidades de datos utilizando consultas PolyBase SQL simples y luego usar el motor de consultas distribuidas para análisis de alto rendimiento.

El grupo de SQL dedicado, anteriormente SQL DW, proporcionará a su empresa una única fuente de verdad que le permitirá integrar y analizar datos más rápido y brindará información más sólida.

¿Cuál es la diferencia entre los grupos de SQL dedicados de Azure Synapse y los grupos de SQL dedicados en un área de trabajo de Azure Synapse Analytics?

PowerShell es una de las áreas más confusas en la documentación entre «el grupo de SQL dedicado (anteriormente SQLDW) y los grupos de SQL dedicados de «Synapse Analytics».

La implementación original de SQL DW usa un servidor lógico similar a Azure SQL DB. Se comparte un módulo de PowerShell denominado Az.Sql.

Este módulo crea un nuevo grupo de SQL (anteriormente SQLDW) mediante el cmdlet New.AzSqlDatabase. Tiene un parámetro de “Edición” que te permite especificar que quieres un DataWarehouse.

Synapse Analytics vino con un nuevo módulo de PowerShell de Az.Synapse cuando se lanzó por primera vez. Para crear un grupo de SQL dedicado en un espacio de trabajo de Synapse Analytics, usaría New-AzSynapseSqlPool.

Este módulo de PowerShell no requiere que incluya el parámetro «Edición», ya que solo se usa para los artefactos de Synapse.

Un grupo de SQL dedicado proporciona computación y almacenamiento basados ​​en T-SQL. Los datos se pueden cargar, modelar y procesar en Synapse para proporcionar información más rápida.

Azure Synapse ofrece grupos de SQL sin servidor y Apache Spark, además de grupos de SQL dedicados. Puede elegir el adecuado según sus requisitos.
Un grupo de SQL sin servidor le permite consultar los datos almacenados en su lago de datos.

¿Qué hace el grupo de SQL dedicado de Azure Synapse?

Azure Synapse Dedicated SQL Pool usa una arquitectura de escalamiento horizontal para distribuir el cálculo de datos entre varios nodos. Puede escalar la computación independientemente del almacenamiento porque la computación es distinta del almacenamiento.

Los grupos de SQL sin servidor no tienen servidor y se escalan automáticamente para cumplir con los requisitos de recursos de consulta. Se adapta a topologías cambiantes agregando, eliminando o conmutando por error nodos. Esto asegura que su consulta tenga suficientes recursos y pueda completarse con éxito.

Synapse SQL se basa en una arquitectura basada en nodos. Synapse SQL utiliza una arquitectura basada en nodos. Las aplicaciones pueden conectarse al nodo de control y emitir comandos T-SQL. Este es el único punto para Synapse SQL.

Los nodos de control de Azure Synapse SQL usan un motor de consultas distribuidas que optimiza las consultas para el procesamiento en paralelo y luego pasa las operaciones a los nodos de Compute para que puedan hacer su trabajo en paralelo.

El nodo de control del grupo SQL sin servidor utiliza el motor de procesamiento de consultas distribuidas (DQP) para optimizar y orquestar la ejecución distribuida.

Esto se hace dividiendo la consulta del usuario en consultas más pequeñas que se pueden ejecutar en los nodos Compute. Cada tarea es una unidad de ejecución distribuida. Recupera datos de otras tareas, agrupa archivos y los lee del almacenamiento.

Los nodos de cómputo almacenan todos los datos del usuario y ejecutan consultas paralelas. El Servicio de movimiento de datos (DMS), un servicio interno a nivel de sistema, mueve datos entre nodos para permitir consultas paralelas y devuelve resultados precisos.

Synapse SQL usa Azure Storage para la seguridad de los datos del usuario. Azure Storage almacena y administra sus datos. Hay un cargo separado por el uso del almacenamiento.

Características de los grupos de SQL dedicados de Azure Synapse

Estas son las características principales de Azure Synapse SQL Pool:

  • Puede consultar los datos en varios formatos, como Parquet, JSON y CSV en el lago de datos.
  • Los usuarios pueden ver los datos más recientes mediante una abstracción relacional.
  • T-SQL le permite transformar los datos en el lago de una manera simple y escalable
  • Los científicos de datos pueden examinar rápidamente la estructura y el contenido de los datos del lago mediante OPENROWSET o funciones de inferencia de esquema automático.
  • Los ingenieros de datos pueden usar el grupo para explorar el lago y transformar, crear o simplificar sus canalizaciones de transformación de datos.
  • Los analistas de datos pueden acceder a los datos y generar tablas externas a través del lenguaje T-SQL y otras herramientas familiares. Estas herramientas también se pueden conectar a un grupo de SQL sin servidor.
  • Genere instantáneamente informes de BI por parte de profesionales de inteligencia comercial sobre tablas Spark o lago de datos.

Grupo SQL dedicado vs. Grupo SQL sin servidor

Grupo SQL sin servidor

Las áreas de trabajo de Azure Synapse tienen un grupo de SQL sin servidor que actúa como un servicio de consulta sobre lagos de datos. No requiere configuración adicional para acceder a los datos. Es completamente sin servidor y no requiere infraestructura para configurar o mantener.

El escalado se puede hacer automáticamente para cumplir con los requisitos de recursos. El usuario paga solo por los datos procesados ​​y no por los recursos reservados. El grupo de SQL sin servidor también crea estadísticas para optimizar las ejecuciones de consultas.

Por ejemplo, cuando ejecutamos una consulta dos veces o ejecutamos dos consultas con planes de ejecución similares, estas estadísticas se pueden reutilizar.
Estas funciones nos permiten analizar rápidamente grandes cantidades de datos sin copiarlos o cargarlos en un almacén en particular.

Grupo SQL dedicado

El SQL Pool dedicado de Synapse es el sucesor de Azure SQL Data Warehouse y ofrece todas las funciones de almacenamiento de datos empresariales. Sin embargo, no hay un grupo de SQL sin servidor. En su lugar, los usuarios deben crear y eliminar el grupo SQL dedicado de Synapse. También podemos elegir los recursos que utilizará.

Estos recursos se miden mediante los grupos de SQL dedicados de Synapse. Se denominan unidades de almacenamiento de datos (DWU). Una DWU hace referencia a una combinación de recursos de CPU, memoria y E/S.

El número de DWU determina el rendimiento y el costo del grupo. En lugar de cobrar por consulta, se nos cobrará por cada vez que el grupo esté activo, independientemente de cuánto trabajo haya realizado.

Para evitar costos adicionales, los grupos dedicados se pueden detener y reiniciar. Creamos un grupo de SQL dedicado de 100 DWU para nuestra prueba.

Una vez que se crea el grupo, los datos se pueden cargar en él mediante el comando COPY, PolyBase con consultas T-SQL o una canalización. Estos datos se almacenarán en almacenamiento en columnas en tablas relacionales.

Grupo de SQL dedicado Grupo de SQL sin servidor Esto le permite consultar el lago de datos e ingerirlo. Los usuarios pueden consultar los archivos del lago de datos. Se requiere infraestructura. No es necesario establecer infraestructura o mantener clústeres. servidores dedicados. No se requiere infraestructura para la transformación o exploración de datos. Las tablas relacionales se utilizan para almacenar datos. Data Lake almacena datos. Puede administrar los costos al pausar el grupo de SQL y reducir el almacén. una base de pago por solicitud. Los recursos reservados están sujetos a un costo. Se cobran los costos de procesamiento de datos por consulta. Pague por DWU aprovisionada. Pague por TB procesados.

Conclusión

Entonces, eso fue todo sobre Azure SQL Data Warehouse (ahora llamado Azure Synapse Dedicated SQL Pool). Si bien un grupo SQL dedicado puede parecer similar a un servidor SQL tradicional desde muchos ángulos, la arquitectura subyacente (procesamiento paralelo masivo) es completamente diferente. Esto significa que ciertos conceptos y técnicas solo se aplican a un grupo de SQL dedicado.

También puede explorar las diferencias entre Data Lake y Data Warehouse.