Curso: Microsoft Azure INA. Tema 02: Módulo 02: Exploración de los servicios de análisis y bases de datos de Azure

Unidad 1: Introducción

Debido a un número cada vez mayor de adquisiciones durante la última década, Tailwind Traders usa diversas tecnologías de análisis y bases de datos. A medida que la empresa empiece a migrar las cargas de trabajo de datos existentes y a implementar nuevas cargas de trabajo de datos en Azure, esta debe comprender qué tecnología de Azure será la adecuada para cada carga de trabajo. El director de tecnología de la empresa le ha asignado la tarea de investigar las distintas opciones de bases de datos disponibles. Esta investigación ayudará a la empresa a elegir las opciones adecuadas para cada uno de los escenarios de datos.

Las aplicaciones actuales deben estar siempre en línea y tener una alta capacidad de respuesta. Para lograr baja latencia y alta disponibilidad, las instancias de estas aplicaciones deben implementarse en centros de datos que están cerca de sus usuarios. Es necesario que las aplicaciones respondan en tiempo real a grandes cambios, en cuanto a uso, en las horas punta, que almacenen volúmenes de datos que cada vez son mayores y que dichos datos estén a disposición de los usuarios en milisegundos. Para ayudar a su empresa a alcanzar sus objetivos, los servicios de bases de datos de Azure se distribuyen globalmente y Azure admite muchas de las bases de datos y API estándar del sector.

El vídeo siguiente proporciona una breve introducción a algunos de los servicios de base de datos que están disponibles en Azure.

  • Azure ofrece gran gama de bases de datos
  • Administración de infraestructura (Escalabilidad / Disponibilidad / Seguridad ) optimizada ahorrando tiempo y dinero
  • Azure SQL Data Base permite crear aplicaciones en la nube con actualización permanente, que permite procesamiento en la nube, escalabilidad y optimización
  • Azure Managed Instansed: permite migrar sus bases de datos a Azure
  • Azure Virtual Machine: puede migrar a Azure optimizando el sistema operativo
  • Permite manejao de bases de datos PostGresSQL y escalar / Seguridad y Administración
  • Se puede migrar postgressql y oracle a Azure
  • MySQL y Maria BD con alta disponibilidad y escalabilidad y migración
  • Con Cosmos BD los desarrolladores pueden desarrollar aplicaciones con alta disponibilidad en cualquier lugar, escalado
  • También se puede utilizare casandra y MongoDB

Unidad 2: Exploración de Azure Cosmos DB

A lo largo de los años, Tailwind Traders ha adquirido varias empresas más pequeñas. Cada una de estas empresas tenía equipos de desarrolladores que usaban diferentes servicios de bases de datos y varias API para trabajar con sus datos. Un plan a largo plazo podría ser trasladar todos los datos dispares a un servicio de base de datos común. Por el momento, sin embargo, es mejor habilitar cada uno de estos equipos para que trabajen con un entorno en el que puedan usar sus conocimientos existentes. Afortunadamente, Azure Cosmos DB puede ayudarle.

  • Azure Cosmos DB es un servicio de base de datos de varios modelos distribuido globalmente
  • Puede escalar de forma elástica e independiente el rendimiento y el almacenamiento en cualquier número de regiones de Azure de todo el mundo
  • Puede aprovechar un acceso rápido y en milisegundos de un solo dígito a los datos mediante cualquiera de las diversas API populares
  • Azure Cosmos DB proporciona de forma exclusiva contratos de nivel de servicio completos para garantizar el rendimiento, la latencia, la disponibilidad y la coherencia.
  • Azure Cosmos DB es compatible con los datos sin esquema, lo que le permite compilar aplicaciones «Always On» con una gran capacidad de respuesta para admitir datos en continuo cambio.

Por ejemplo, Tailwind Traders proporciona un portal de aprendizaje público que usan los clientes de todo el mundo para obtener información sobre las distintas herramientas que crea Tailwind Traders. Los desarrolladores de Tailwind Traders mantienen y actualizan los datos. En la siguiente ilustración se muestra una base de datos de ejemplo de Azure Cosmos DB que se usa para almacenar datos para el sitio web del portal de aprendizaje de Tailwind Traders.

  • Azure Cosmos DB es flexible. En el nivel más bajo, Azure Cosmos DB almacena los datos en formato de secuencia de registro de átomos (ARS). 
  • Después, los datos se abstraen y se proyectan como una API, que se especifica al crear la base de datos. Entre las opciones se incluyen SQL, MongoDB, Cassandra, Tables y Gremlin

Unidad 3: Exploración de Azure SQL Database

  • Azure SQL Database es una base de datos relacional basada en la última versión estable del motor de base de datos de Microsoft SQL Server.
  • SQL Database es una base de datos de alto rendimiento, confiable, totalmente administrada y segura. 
  • Puede usarla para compilar aplicaciones y sitios web por lenguajes de programación sin necesidad de administrar infraestructura.

Características

  • Azure SQL Database es un motor de base de datos de plataforma como servicio (PaaS)
  • Controla la mayoría de las funciones de administración de bases de datos, como las actualizaciones, las aplicaciones de revisiones, las copias de seguridad y la supervisión, sin intervención del usuario. 
  • SQL Database proporciona disponibilidad del 99,99 %. 
  • SQL Database permiten centrarse en las actividades de administración y optimización de bases de datos específicas del dominio que son críticas para el negocio.
  • SQL Database es un servicio totalmente administrado que ofrece alta disponibilidad, copias de seguridad y otras operaciones de mantenimiento comunes.
  • Microsoft controla todas las actualizaciones del código del sistema operativo y SQL. No hace falta administrar la infraestructura
  • SQL Database puede ser la opción adecuada para una variedad de aplicaciones modernas en la nube, porque le permite procesar tanto datos relacionales como estructuras no relacionales, por ejemplo, grafos, JSON, elementos espaciales y XML.
  • Puede usar características avanzadas de procesamiento de consultas, como las tecnologías en memoria de alto rendimiento y el procesamiento de consultas inteligente. 
  • De hecho, las funcionalidades más recientes de SQL Server se publican primero en SQL Database y, después, en el propio SQL Server.
  •  Las funcionalidades de SQL Server más recientes se obtienen sin costo alguno mediante actualizaciones o mejoras, y se han probado en millones de bases de datos.

Migración

En la actualidad, Tailwind Traders usa varios servidores locales que ejecutan SQL Server, que proporcionan almacenamiento de datos para el sitio web de acceso público (por ejemplo, datos de clientes, historial de pedidos y catálogos de productos). Además, los servidores locales que ejecutan SQL Server también proporcionan almacenamiento de datos para el sitio web del portal de aprendizaje solo para uso interno. Tailwind Traders usa el sitio web para los materiales de aprendizaje de los nuevos empleados (como los materiales de estudio, los detalles de certificación y los certificados de aprendizaje). En la ilustración siguiente se muestran los tipos de datos que su empresa puede almacenar en el sitio web del portal de aprendizaje de Azure SQL Database.

  • Puede migrar las bases de datos existentes de SQL Server con un tiempo de inactividad mínimo mediante Azure Database Migration Service. 
  • Microsoft Data Migration Assistant puede generar informes de evaluación que proporcionan recomendaciones para ayudarlo a través de los cambios necesarios anteriores a la ejecución de una migración.
  •  Después de evaluar y resolver cualquier corrección necesaria, está listo para comenzar el proceso de migración. Azure Database Migration Service realiza todos los pasos necesarios. El usuario solo tiene que cambiar la cadena de conexión en las aplicaciones.

Unidad 4: Ejercicio: Creación de una base de datos SQL

  • Primero es necesario tener una suscripción de azure

Tarea 1: Creación de la base de datos

  • Inicie sesión en Azure Portal.
  • Seleccione Crear un recurso>Bases de datos>SQL Database. Aparecerá el panel Crear base de datos SQL.
  • Escriba los valores siguientes para cada opción.
  • Quedando así
  • en la parte del servidor creamos uno nuevo Aparecerá el panel Crear un servidor de SQL Database.
  • Escriba los valores siguientes para cada opción.
  • Quedando así
  • Seleccione Aceptar.
  • Complete los campos restantes de Crear una base de datos SQL con los valores siguientes.
  • Aparece el formulario anterior quedando así:
  • Seleccione Siguiente: Redes y configure las siguientes opciones (acepte los valores predeterminados para los campos no especificados).
  • Seleccione los valores
  • Quedando así
  • Seleccione Siguiente: Seguridad y, en Habilitar Azure Defender para SQL, elija Ahora no. Deje la configuración restante como predeterminada (no configurada).
  • Quedando así:
  • Seleccione Siguiente: Configuración adicional y configure las siguientes opciones.
  • Quedando así:
  • Seleccione Revisar y crear para validar las entradas de la configuración.
  • Seleccione Crear para implementar el servidor y la base de datos. La creación del servidor y la implementación de la base de datos de ejemplo pueden tardar aproximadamente entre dos y cinco minutos. El panel de implementación muestra el estado, con actualizaciones para cada recurso que se crea.
  • Inicia el proceso
  • Una vez finalizada la implementación, seleccione Ir al recurso. El panel de información general de la base de datos SQL db1 muestra los aspectos básicos de la base de datos recién implementada.
  • En la barra de comandos, seleccione Establecer el firewall del servidor. Aparecerá la página Configuración de firewall.
  • Seleccione Permitir que los servicios y recursos de Azure accedan a este servidor en  y deje las demás opciones en los valores predeterminados.
  • En la barra de comandos, seleccione Guardar para actualizar la configuración del firewall y, a continuación, cierre el panel de configuración del firewall.
  • Damos Aceptar

Tarea 2: Probar la base de datos

En esta tarea, configurará el servidor y ejecutará una consulta SQL

  • En el menú de recursos de Azure, seleccione Todos los recursos. En Tipo de recurso, busque y seleccione Base de datos SQL y asegúrese de que se ha creado la nueva base de datos. Es posible que tenga que actualizar la página.
  • Ingresamos a la página de inicio del Portal de Azure y en el menú buscamos «Todos los recursos»
  • Podemos ver que se creo el recurso
  • Seleccione db1, la base de datos SQL que ha creado.
  • Esto abre el administrador de recursos
  • En el menú de Base de datos SQL, seleccione Editor de consultas (versión preliminar) . Aparecerá el panel Editor de consultas (versión preliminar).
  • Aparecerá el panel Editor de consultas (versión preliminar).
  • Inicie sesión como sqluser con la contraseña Pa$$w0rd1234.
  • No podrá iniciar sesión porque la dirección IP debe estar habilitada en una regla del firewall.
  • En el menú Editor de consultas, seleccione Información general (los cambios se perderán) y, en la barra de comandos, seleccione Establecer el firewall del servidor. Aparecerá la página Configuración de firewall.
  • En la sección Dirección IP del cliente, se mostrará la dirección IP; compruebe que se trata de la misma dirección IP del cliente del error que ha recibido en el paso anterior.
  • En la barra de comandos, seleccione Agregar IP de cliente. Se agregará un Nombre de regla que contiene la dirección IP en los campos IP inicial e IP final.
  • Al presionar el botón aparecen los datos del cliente
  • En la barra de comandos, seleccione Guardar para guardar esta regla de firewall.
  • Seleccione la base de datos db1 en la ruta de navegación de la parte superior de la página para volver a la base de datos SQL y, a continuación, seleccione Editor de consultas (versión preliminar) en el menú. página de inicio de sesión.
  • Vuelva a iniciar sesión como sqluser con la contraseña Pa$$w0rd1234. Esta vez debería poder hacerlo. La nueva regla de firewall podría tardar un par de minutos en implementarse. Si sigue apareciendo un error, compruebe la dirección IP del cliente en el error y vuelva Configuración del firewall para agregar la dirección IP correcta del cliente.
  • Después de iniciar sesión correctamente, aparece el panel de consulta. Escriba la siguiente consulta SQL en el panel del editor.
SELECT TOP 20 pc.Name as CategoryName, p.name as ProductName
FROM SalesLT.ProductCategory pc
JOIN SalesLT.Product p
ON pc.productcategoryid = p.productcategoryid;
  • Seleccione Ejecutar y examine los resultados de la consulta en el panel Resultados. La consulta debería ejecutarse correctamente.
  • Así
  • ¡Enhorabuena! Ha creado una base de datos SQL en Azure y ha consultado correctamente los datos de dicha base de datos.
  • Así
  • Luego eliminamos el «Grupo de Recursos»

Unidad 5: Exploración de Azure Database for MySQL

En la actualidad, Tailwind Traders administra varios sitios web locales que usan la pila LAMP (Linux, Apache, MySQL y PHP). 

Ya ha averiguado que la característica Web Apps de Azure App Service proporciona funcionalidad integrada para crear aplicaciones web que usan PHP en un servidor Linux que ejecuta Apache. 

  • Azure Database for MySQL es un servicio de bases de datos relacionales en la nube, y se basa en el motor de base de datos de MySQL Community Edition, versiones 5.6, 5.7 y 8.0.
  • Tiene un contrato de nivel de servicio de disponibilidad del 99,99 % de Azure, con la tecnología de una red global de centros de recursos administrados por Microsoft. 
  • Cada servidor de Azure Database for MySQL ventajas de la seguridad integrada, la tolerancia a errores y la protección de datos,
  • Con Azure Database for MySQL puede usar la restauración a un momento dado para recuperar un servidor a un estado anterior, con un plazo máximo de 35 días.
  • Azure Database for MySQL ofrece lo siguiente:
    • Alta disponibilidad integrada sin coste adicional.
    • Rendimiento predecible y precios de pago por uso inclusivos
    • Escalado según sea necesario, en cuestión de segundos.
    • Capacidad de protección de información confidencial en reposo y en movimiento
    • Copias de seguridad automáticas.
    • Seguridad y cumplimiento de nivel empresarial.
  • Estas funcionalidades no requieren casi ninguna tarea de administración y todas se proporcionan sin ningún costo adicional. 
  • Le permiten centrarse en el desarrollo rápido de aplicaciones y en reducir el plazo de comercialización, en lugar de tener que administrar las máquinas virtuales y la infraestructura. 
  • Además, puede migrar las bases de datos existentes de MySQL con un tiempo de inactividad mínimo mediante Azure Database Migration Service.
  • Después de completar la migración, puede seguir desarrollando la aplicación con las herramientas de código abierto y en la plataforma que prefiera. No tiene que adquirir nuevos conocimientos.
  • Azure Database for MySQL ofrece varios niveles de servicio, y cada uno de ellos aporta un rendimiento y una funcionalidad diferentes para admitir cargas de trabajo de bases de datos ligeras y pesadas.
  • Puede compilar su primera aplicación en una base de datos pequeña por poco dinero al mes y, después, ajustar la escala para satisfacer las necesidades de la solución.
  • La escalabilidad dinámica permite a la base de datos responder de manera transparente a los cambiantes requisitos de recursos. Solo paga por los recursos que necesite y cuando los necesite.

Unidad 6: Exploración de Azure Database for PostgreSQL

Como parte de su estrategia general de datos, Tailwind Traders ha estado usando PostgreSQL durante varios años. Es posible que usted y su equipo ya conozcan las ventajas de PostgreSQL. Una parte de su migración consiste en usar Azure Database for PostgreSQL, y quiere asegurarse de que tendrá acceso a los mismos beneficios que en el servidor local antes de pasar a la nube.

  • Azure Database for PostgreSQL es un servicio de base de datos relacional en la nube.
  • El software de servidor se basa en la versión de la comunidad del motor de base de datos de PostgreSQL de código abierto
  • Su familiaridad con las herramientas y la experiencia con PostgreSQL son aplicables cuando se use Azure Database for PostgreSQL.
  • Azure Database for PostgreSQL ofrece las siguientes ventajas:
    • Alta disponibilidad integrada en comparación con los recursos locales. No hay ninguna configuración, replicación o costo adicionales que sean necesarios para asegurarse de que las aplicaciones están siempre disponibles.
    • Precios sencillos y flexibles. Tiene un rendimiento predecible en función de un plan de tarifa seleccionado que incluye copias de seguridad automáticas, aplicación de revisiones de software, supervisión y seguridad.
    • Escalado o reducción vertical según sea necesario, en cuestión de segundos. Puede escalar procesos o almacenamiento por separado según sea necesario para asegurarse de que adapta su servicio para que coincida con el uso.
    • Copias de seguridad automáticas ajustables y restauración a un momento dado durante un máximo de 35 días.
    • Seguridad y cumplimiento de nivel empresarial para proteger la información confidencial en reposo y en movimiento. Esta seguridad abarca el cifrado de datos en el disco y el cifrado SSL entre la comunicación entre cliente y servidor.
    • Azure Database for PostgreSQL está disponible en dos opciones de implementación: Servidor único e Hiperescala (Citus).

Servidor único

Un solo servidor ofrece:

  • Alta disponibilidad integrada sin coste adicional (contrato de nivel de servicio del 99,99 %).
  • Rendimiento predecible y precios de pago por uso inclusivos.
  • Escalado vertical según sea necesario, en cuestión de segundos.
  • Supervisión y alertas para evaluar el servidor.
  • Seguridad y cumplimiento de nivel empresarial.
  • Capacidad de protección de información confidencial en reposo y en movimiento.
  • Copias de seguridad automáticas y restauración a un momento dado durante un máximo de 35 días.
  • Todas estas funcionalidades apenas requieren tareas de administración y todas se proporcionan sin costo adicional.
  • Se puede centrar en el desarrollo rápido de aplicaciones y en reducir el plazo de comercialización, en lugar de tener que administrar las máquinas virtuales y la infraestructura. 
  • Puede seguir desarrollando la aplicación con las herramientas de código abierto y en la plataforma de que prefiera sin necesidad de adquirir nuevos conocimientos.
  • La opción de implementación Un solo servidor ofrece tres planes de tarifa: Básico, De uso general y Optimizado para memoria. 
  • Puede compilar su primera aplicación en una base de datos pequeña por poco dinero al mes y, después, ajustar la escala para satisfacer las necesidades de la solución
  • La escalabilidad dinámica permite a la base de datos responder de manera transparente a los cambiantes requisitos de recursos. Solo paga por los recursos que necesite y cuando los necesite.

Hiperescala (Citus)

  • La opción de Hiperescala (Citus) escala horizontalmente las consultas entre varias máquinas mediante el particionamiento.
  • Su motor de consultas paraleliza las consultas SQL entrantes en estos servidores para agilizar las respuestas en conjuntos de datos grandes. 
  • Proporciona servicios a las aplicaciones que requieren mayor escala y mejor rendimiento, por lo general las cargas de trabajo que se aproximan a los 100 GB de datos (o que ya los superan).
  • La opción de implementación de Hiperescala (Citus) admite aplicaciones multiinquilino, análisis operativos en tiempo real y cargas de trabajo transaccionales de alto rendimiento.
  • Las aplicaciones compiladas para PostgreSQL puede ejecutar consultas distribuidas en Citus con las bibliotecas de conexiones estándar y unos cambios mínimos.

Unidad 7: Exploración de Azure SQL Managed Instance

Azure SQL Managed Instance es un servicio de datos en la nube escalable que proporciona la mayor compatibilidad con el motor de base de datos de SQL Server con todas las ventajas de una plataforma como servicio totalmente administrada. En función de su escenario, Azure SQL Managed Instance podría ofrecer más opciones para sus necesidades de base de datos.

Características

  • Al igual que Azure SQL Database, Azure SQL Managed Instance es un motor de base de datos de plataforma como servicio (PaaS), lo que significa que su empresa podrá aprovechar las mejores características de mover los datos a la nube en un entorno totalmente administrado.
  • su empresa ya no necesitará comprar y administrar hardware caro, y no tendrá que mantener la sobrecarga adicional derivada de administrar la infraestructura local. 
  • su empresa se beneficiará de las características de aprovisionamiento rápido y escalado de servicio de Azure, junto con la aplicación automatizada de revisiones y las actualizaciones de versiones.
  • Además, podrá estar seguro de que los datos siempre estarán allí cuando los necesite a través de características de alta disponibilidad integradas y un acuerdo de nivel de servicio (SLA) del 99,99 % de tiempo de actividad
  • También podrá proteger los datos con copias de seguridad automatizadas y un período de retención de copias de seguridad configurable.
  • Azure SQL Database y Azure SQL Managed Instance ofrecen muchas características iguales, pero Azure SQL Managed Instance proporciona varias opciones que puede que no estén disponibles en Azure SQL Database.
  • Por ejemplo, Tailwind Traders usa actualmente varios servidores locales que ejecutan SQL Server y les gustaría migrar sus bases de datos existentes a una base de datos SQL que se ejecute en la nube. Sin embargo, algunas de sus bases de datos usan caracteres cirílicos para la intercalación. En este escenario, Tailwind Traders debe migrar sus bases de datos a una instancia de Azure SQL Managed Instance, ya que Azure SQL Database solo usa la intercalación del servidor SQL_Latin1_General_CP1_CI_AS predeterminada.
  • Para obtener una lista detallada de las diferencias entre Azure SQL Database y Azure SQL Managed Instance, vea Comparación de características: Azure SQL Database y Azure SQL Managed Instance.

Migración

  • Azure SQL Managed Instance facilita la migración de los datos locales en SQL Server a la nube con Azure Database Migration Service (DMS) o copias de seguridad y restauración nativas.
  • Una vez que haya descubierto todas las características que usa la empresa, deberá evaluar qué instancias locales de SQL Server puede migrar a Azure SQL Managed Instance para ver si tiene algún problema de bloqueo
  • Una vez resueltas las incidencias, puede migrar los datos y, después, realizar la transferencia desde el servidor SQL Server local a la instancia de Azure SQL Managed Instance cambiando la cadena de conexión en las aplicaciones.

Unidad 8: Exploración de análisis y macrodatos

Hace varios años, Tailwind Traders implementó un nuevo sistema de seguimiento GPS para todos sus vehículos de entrega. El nuevo sistema proporciona datos de seguimiento en tiempo real a su centro de datos principal. Su director de tecnología pide a su equipo examinar varios años de datos de seguimiento para determinar las tendencias. Por ejemplo, una tendencia importante podría ser un pico en las entregas en torno a los días festivos que requeriría contratar a personal adicional. Mediante un análisis exhaustivo de los datos de seguimiento que ha registrado, el director de tecnología busca predecir cuándo es necesario realizar cambios y llevar a cabo proactivamente los pasos necesarios para administrar adecuadamente los picos.

La forma y el formato de los datos son muy variados. Cuando hablamos sobre macrodatos, nos referimos a grandes volúmenes de datos. En este escenario de Tailwind Traders, los datos se recopilan de los sensores GPS, que incluyen información de ubicación, datos de los sistemas del tiempo y muchos otros orígenes que generan grandes cantidades de datos. Con tal cantidad de datos, es cada vez más difícil comprenderlos y tomar decisiones basándose en ellos. Estos volúmenes son tan grandes que las formas de procesamiento y análisis tradicionales ya no son adecuadas.

A lo largo del tiempo, se han desarrollado tecnologías de clúster de código abierto para tratar con estos grandes conjuntos de datos. Microsoft Azure admite una amplia gama de tecnologías y servicios para proporcionar soluciones de macrodatos y análisis, como Azure Synapse Analytics, Azure HDInsight, Azure Databricks y Azure Data Lake Analytics.

Azure Synapse Analytics

  • Azure Synapse Analytics (anteriormente Azure SQL Data Warehouse) es un servicio de análisis ilimitado que reúne el almacenamiento de datos empresariales y el análisis de macrodatos. 
  • Puede consultar los datos como prefiera mediante recursos sin servidor o aprovisionados a escala.
  • Tiene una experiencia unificada para ingerir, preparar, administrar y servir datos para las necesidades inmediatas de inteligencia empresarial y aprendizaje automático.


Azure HDInsight

  • Azure HDInsight es un servicio de análisis de código abierto totalmente administrado para empresas. 
  • Es un servicio en la nube que hace que sea más fácil, rápido y rentable procesar grandes cantidades de datos.
  • Puede ejecutar marcos de código abierto populares y crear tipos de clúster, como Apache SparkApache HadoopApache KafkaApache HBaseApache Storm y Machine Learning Services.
  • HDInsight también admite una amplia gama de escenarios, como la extracción, la transformación y la carga de datos (ETL), el almacenamiento de datos, el aprendizaje automático e IoT.

Azure Databricks

  • Azure Databricks le ayuda a descubrir información de todos los datos y a crear soluciones de inteligencia artificial. 
  • Puede configurar el entorno de Apache Spark en minutos y, después, escalar automáticamente y colaborar en proyectos compartidos en un área de trabajo interactiva. 
  • Azure Databricks admite Python, Scala, R, Java y SQL, así como marcos y bibliotecas de ciencia de datos, como TensorFlow, PyTorch y Scikit-learn.


Análisis con Azure Data Lake

  • Azure Data Lake Analytics es un servicio de trabajos de análisis a petición que simplifica los macrodatos. 
  • En lugar de implementar, configurar y ajustar el hardware, escribirá consultas para transformar los datos y extraer ideas valiosas.
  • El servicio de análisis puede administrar trabajos de cualquier escala al instante, simplemente estableciendo el ajuste adecuado.
  • Solo paga por su trabajo cuando se está ejecutando, lo que hace que sea más rentable.

Video 2.4.1: Exploración de los servicios de análisis y BD en Azure Parte 1

  • Azure ofrece Bases de Datos Relacionales y No Relacionales
  • Así con tecnología y servicios para macrodatos y análisis

Azure Cosmos DB

  • Base de datos No SQL
  • Totalmente administrado (cómputo sin servidor)
  • Que ofrece alto escalamiento automático y tiempos de respuesta alto (en milisegundos) y alto redimiento
  • Ofrece un SLA 99.999% (disponibilidad)
  • Puede servir para aplicaciones Web, Móviles, video juegos o IoT
  • Eso para controlar gran cantidad de datos y operaciones Lectura/Escritura con tiempos de respuesta casi real

Azure SQL DB

  • BD relacional
  • Servicio PaaS totalmente administrado (por tanto Azure se encarga de las actualizaciones automáticas, revisiones y copias de seguridad )
  • Ventajas: alta disponibilidad de un 99.99% / copias de seguridad / No administración de infraestructura / escalamiento
  • Tiene 2 modelos de compra:
    • Basado en núcleo virtual: que utiliza la BD (cantidad de núcleos)
    • Basado en DTU: que son unidades de transacción de DB (por cantidad de transacciones)

Azure SQL Managed Instance

  • Es una BD Relacional
  • Es de tipo PaaS
  • Y parece un servicio igual a SQL DB pero SQL Managed Instance tiene las siguientes diferencias, no quiere decir que un servicio es mejor que otros solo que se implementan en diferentes escenarios

Ventajas de Azure SQL Managed Instance VS Azure SQL DB

  • Ejemplo 1: en «Personalizar la intercalación servidor/instancia»: este es un parámetro de configuración del servidor SQL que se utiliza para configurar las reglas que gobiernan el uso de los caracteres de los idiomas utilizados en las BD’s y esto afectar las reglas de ordenación y comparación como son los JOIN’s y ORDER BY, así como otros operadores de comparación, nombres de variables, etc, entonces en el caso de Azure SQL DB solo ofrece una configuración predeterminada y en Azure SQL Managed Instance si se puede configurar cuendo se crea la instancia pero luego no se puede modificar
  • Ejemplo 2: «Captura de datos modificados» que Azure SQL Managed Instance si tiene esta característica que es un historial de los cambios aplicados en una tabla de operaciones (creación / Modificación / Eliminación de los datos)
  • Ejemplo 3: Transacciones entre bases de datos: cuando en nuestras aplicaciones se debe dar particionamiento de las bases de datos y necesitamos realizar operaciones entre ellas

Ventajas de Azure SQL DB VS Azure SQL Managed Instance

  • Nos permite ejecutar scripts de python o R con datos relacionados para hacer análisis predictivos
  • Disponibilidad del servicio y escalabilidad
  • Por esto la selección del servicio depende nuestro proyecto

Azure DB for MySQL

  • BD relacional basada en MYSQL Community Edition
  • Tipo PaaS pero se puede instalar como IaaS en una MV
  • Alta disponibilidad SLA de 99.99%
  • Escalado según sea necesario
  • Copias de seguridad automáticas
  • Y se utiliza para sitios Web que utilizan LAMP

Azure DB for PostgreSQL

  • Modelo Relacional basado en PostgreSQL (Su desarrollo se da por la comunidad )
  • Tipo PaaS
  • Se puede utilizar para aplicaciones Web con LAMP

Video 2.4.2: Exploración de los servicios de análisis y BD en Azure Parte 2

  • En la actualidad todos los sistemas generan datos desde megabyte a pentabytes
  • Lo ideal es explotar estos datos para sacarles el mejor provecho
  • Pero la verdad es que muchos de estos datos NO están listos para ser analizados
  • Por que no tienen la correcta estructura para al análisis de datos, se encuentran segmentados o en diferentes bases de datos, tienen valores erróneos (NULL. vacios,duplicados, caracteres especiales, etc)
  • Para los cuales los científicos e ingenieros de datos tienen procesos de ETL o ELT que son procesos de canalización de datos que dependiendo del caso les permite realizar la recuperación de distintos orígenes, cargarlos en un almacén de datos y aplicarles transformaciones, todo esto con el objetivos de prepararlos para aplicarles un análisis y explotar la información

ETL

  • Es la primera combinación Extracción-Transformación Y Carga
  • Es un proceso secuencial donde:
    • Se extraen los datos de diferentes orígenes
    • Se transforman de acuerdo a las reglas de negocio
    • Se cargan en un solo almacén de datos

ELT

  • Es diferente solo por donde se realiza la transformación
  • Ya que la transformación de datos se realiza en el almacén de datos destino
  • Simplificando la arquitectura
  • Es más utilizado para los macrodatos que es el modelo más utilizado en Azure

Azure Synapse Analytics

  • Sistema distribuido para análisis de datos de gran tamaño
  • Permite el procesamiento paralelo masivo (permitiendo análisis de alto rendimiento)
  • Y este es de tipos SaaS (facilitando la curva de aprendizaje del usuario final)
  • Mejora los mejor de la tecnologías como SQL (parta almacenamiento de datos) / Spark (para el procesamiento de datos permitiendo creación de modelos de aprendizaje y un tratamiento de datos eficiente )
  • Este nos permite crea ETL/ELT
  • Permite obtener datos de más de 90 origenes

Azure HDInsigth

  • Permite el procesamiento de datos de manera rentable utilizando marcos de código abierto cmo Hadoop, Spark Hive, LLAP, Kafla, Strom o R
  • De todos los servicios de análisis es el que requiere mayor configuración de la infraestructura (en cuanto a los clústers utilizados)
  • La forma que se factura este servicio es por procesamiento y se mide en minutos
  • Y las actividades se pueden programar utilizando Azure Data Factory
  • También permite la creación de modelos de aprendizaje
  • Y es el servicios de análisis que mas se encuentra disponible en las regiones de Azure

Azure Databricks

  • Es es un servicio más utilizado por los científicos e ingenieros de datos, para el análisis de macrodatos con Apache Spark que permite crear una capa de inteligencia artificial
  • PaaS
  • Las mayores fortalezas es que es de gestión 0 / que permite gestión colaborativa que ofrece en forma de Notebooks
  • Databricks no es responsable de la capa persistencia de los datos esto quiere decir que los datos se procesan con spark pero antes los datos deben estar almacenados en algún componente adicional
  • La ventaja es de trabajar databricks con Azure es que se ejecuta con todo el potencial de Azure, permitiendo la creación de clusters de Azure con GPU’s y ofrecer un autoescalado para consumir lo que realmente necesitamos

Azure Data Lake Analytics

  • Es una plataforma de análisis distribuida que permite la ejecución de script’s de U-SQL en la nube donde la sintaxis se basa en SQL con un poco de C-#
  • PaaS
  • Su implementación habitual se puede dividir en dos servicios conectados Azure Data Lake Store y Azure Data Lake Analytics ya que este solo puede leer datos de Azure Data Lake Store (ya que este es el que se encarga de la persistencia de los datos y nos permite almacenar cualquier tipo de datos y estructura) y Azure Data Lake Analytics se encarga del análisis y explotación de los datos

Tablas comparativa

  • No se puede decir cual es mejor, todos depende de los que se requiere y los científicos de los datos (por ejemplo ellos puede saber utilizar python o R o con U-SQL)