{"id":9944,"date":"2022-06-17T17:43:34","date_gmt":"2022-06-17T23:43:34","guid":{"rendered":"https:\/\/ugit.siua.ac.cr\/?p=9944"},"modified":"2022-06-20T12:04:33","modified_gmt":"2022-06-20T18:04:33","slug":"azure-dp-900-t04-m02-exploracion-de-los-aspectos-basicos-del-analisis-en-tiempo-real","status":"publish","type":"post","link":"https:\/\/sada.services\/?p=9944","title":{"rendered":"Azure DP-900: T04\/M02: Exploraci\u00f3n de los aspectos b\u00e1sicos del an\u00e1lisis en tiempo real"},"content":{"rendered":"\n<p><a href=\"https:\/\/docs.microsoft.com\/es-mx\/learn\/modules\/explore-fundamentals-stream-processing\/\">https:\/\/docs.microsoft.com\/es-mx\/learn\/modules\/explore-fundamentals-stream-processing\/<\/a><\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Unidad 1: Introducci\u00f3n<\/h2>\n\n\n\n<p>Un mayor uso de la tecnolog\u00eda por parte de personas, empresas y otras organizaciones, junto con la proliferaci\u00f3n de dispositivos inteligentes y acceso a Internet, ha generado un crecimiento masivo del volumen de datos que se pueden generar, capturar y analizar. Gran parte de estos datos se pueden procesar en tiempo real (o al menos,&nbsp;<em>casi<\/em>&nbsp;en tiempo real) como un&nbsp;<em>flujo<\/em>&nbsp;perpetuo de datos, lo que permite la creaci\u00f3n de sistemas que revelan conclusiones y tendencias instant\u00e1neas, o toman medidas inmediatas de respuesta a los eventos a medida que se producen.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Unidad 2: Comprensi\u00f3n del procesamiento de flujos y por lotes<\/h2>\n\n\n\n<p>El procesamiento de datos es simplemente la conversi\u00f3n de datos sin procesar en informaci\u00f3n significativa a trav\u00e9s de un proceso. Existen dos m\u00e9todos generales para procesar los datos:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><em>Procesamiento por lotes<\/em>, en el que se recopilan y almacenan varios registros de datos antes de procesarse juntos en una sola operaci\u00f3n.<\/li><li><em>Procesamiento de flujos<\/em>, en el que un origen de datos se supervisa y procesa constantemente en tiempo real a medida que se producen nuevos eventos de datos.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Procesamiento por lotes<\/h3>\n\n\n\n<p>En el procesamiento por lotes, los elementos de datos reci\u00e9n llegados se recopilan y se almacenan y todo el grupo se procesa de forma conjunta, como un lote. El momento en el que se procesa cada grupo se puede determinar de varias maneras. Por ejemplo, los datos se pueden procesar seg\u00fan un intervalo de tiempo programado (por ejemplo, cada hora), o bien el procesamiento puede desencadenarse cuando se alcance una determinada cantidad de datos o como resultado de alg\u00fan otro evento.<\/p>\n\n\n\n<p>Por ejemplo, supongamos que quiere analizar el tr\u00e1fico de carreteras contando el n\u00famero de autom\u00f3viles en un tramo de carretera. Un enfoque de procesamiento por lotes requerir\u00eda recopilar los autom\u00f3viles de un aparcamiento y, a continuaci\u00f3n, contarlos en una sola operaci\u00f3n mientras est\u00e1n en reposo.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img fetchpriority=\"high\" decoding=\"async\" width=\"1024\" height=\"576\" src=\"\/wp-content\/uploads\/2022\/06\/batch-1024x576.png\" alt=\"\" class=\"wp-image-9949\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/batch-1024x576.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/batch-300x169.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/batch-768x432.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/batch.png 1280w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Si la carretera est\u00e1 ocupada, con un gran n\u00famero de autom\u00f3viles que conducen a intervalos frecuentes, este enfoque puede ser poco pr\u00e1ctico. Tenga en cuenta que no obtiene ning\u00fan resultado hasta que haya estacionado un lote de autom\u00f3viles y los haya contado.<\/p>\n\n\n\n<p>Un ejemplo real de procesamiento por lotes es la forma en que las empresas de tarjetas de cr\u00e9dito controlan la facturaci\u00f3n. El cliente no recibe una factura por cada compra que hace con su tarjeta de cr\u00e9dito, sino una factura mensual para todas las compras de ese mes.<\/p>\n\n\n\n<p>Entre las ventajas del procesamiento por lotes se incluyen las siguientes:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Se pueden procesar grandes vol\u00famenes de datos en un momento especificado.<\/li><li>Se puede programar para ejecutarse mientras los equipos o sistemas est\u00e1n inactivos, como por la noche o en horas de poca actividad.<\/li><\/ul>\n\n\n\n<p>Entre las desventajas del procesamiento por lotes est\u00e1n las siguientes:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>El tiempo de retardo entre la ingesta de los datos y la obtenci\u00f3n de los resultados.<\/li><li>Todos los datos de entrada de un trabajo por lotes deben estar listos para poder procesar un lote. Esto significa que los datos deben comprobarse con cuidado. Los problemas con los datos, los errores y los bloqueos de los programas que se producen durante los trabajos por lotes provocan la detenci\u00f3n de todo el proceso. Los datos de entrada deben comprobarse cuidadosamente antes de volver a ejecutar el trabajo. Incluso los errores de datos menores pueden impedir la ejecuci\u00f3n de un trabajo por lotes.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Informaci\u00f3n sobre el procesamiento de flujos<\/h3>\n\n\n\n<p>En el procesamiento en streaming, cada nuevo fragmento de datos se procesa cuando llega. A diferencia del procesamiento por lotes, no hay ning\u00fan tiempo de espera hasta el siguiente intervalo de procesamiento por lotes y los datos se procesan como unidades individuales en tiempo real en lugar de procesarse de lote en lote. El procesamiento de datos de flujos es beneficioso en los escenarios donde se generan datos din\u00e1micos nuevos de forma continua.<\/p>\n\n\n\n<p>Por ejemplo, un enfoque mejor para nuestro hipot\u00e9tico problema de recuento de autom\u00f3viles podr\u00eda ser aplicar un enfoque de\u00a0<em>flujo de datos<\/em>, contando los autom\u00f3viles en tiempo real a medida que pasan:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img decoding=\"async\" width=\"1280\" height=\"720\" src=\"\/wp-content\/uploads\/2022\/06\/stream.gif\" alt=\"\" class=\"wp-image-9950\"\/><\/figure>\n\n\n\n<p>En este enfoque, no es necesario esperar hasta que todos los autom\u00f3viles hayan estacionado para comenzar a procesarlos, y puede sumar los datos a lo largo de intervalos de tiempo. Por ejemplo, contando el n\u00famero de autom\u00f3viles que pasan cada minuto.<\/p>\n\n\n\n<p>Entre los ejemplos reales de datos de flujos se incluyen:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Una instituci\u00f3n financiera realiza un seguimiento de los cambios en el mercado de valores en tiempo real, calcula el valor en riesgo y reequilibra autom\u00e1ticamente las carteras en funci\u00f3n de los movimientos de precio de las acciones.<\/li><li>Una empresa de juegos en l\u00ednea recopila datos en tiempo real sobre las interacciones de los jugadores con los juegos y los incorpora en su plataforma de juegos. Despu\u00e9s, analiza los datos en tiempo real y ofrece incentivos y experiencias din\u00e1micas para atraer a los jugadores.<\/li><li>Un sitio web inmobiliario hace un seguimiento de un subconjunto de datos de dispositivos m\u00f3viles y ofrece recomendaciones en tiempo real de las propiedades que pueden visitar los clientes en funci\u00f3n de su ubicaci\u00f3n geogr\u00e1fica.<\/li><\/ul>\n\n\n\n<p>El procesamiento en streaming es id\u00f3neo para las operaciones en las que la velocidad de ejecuci\u00f3n es importante y que requieren una respuesta instant\u00e1nea en tiempo real. Por ejemplo, un sistema que supervisa la presencia de humo y altas temperaturas en un edificio necesita activar alarmas y desbloquear puertas para permitir que los residentes puedan salir inmediatamente en caso de que se produzca un incendio.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Diferencias entre los datos de streaming y por lotes<\/h3>\n\n\n\n<p>Adem\u00e1s de las diferencias en la forma en que el procesamiento por lotes y en streaming controlan los datos, hay otras diferencias:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><em>\u00c1mbito de los datos<\/em>: el procesamiento por lotes puede procesar todos los datos del conjunto de datos. Normalmente, el procesamiento en streaming solo tiene acceso a los datos recibidos m\u00e1s recientemente recibidos o dentro de un per\u00edodo de tiempo cambiante (los \u00faltimos 30\u00a0segundos, por ejemplo).<\/li><li><em>Tama\u00f1o de los datos<\/em>: el procesamiento por lotes es adecuado para administrar grandes conjuntos de datos de forma eficaz. El procesamiento en streaming est\u00e1 dise\u00f1ado para registros individuales o\u00a0<em>microlotes<\/em>\u00a0que constan de pocos registros.<\/li><li><em>Rendimiento<\/em>: la\u00a0<em>latencia<\/em>\u00a0es el tiempo que se tarda en recibir y procesar los datos. la latencia del procesamiento por lotes suele ser de unas horas. Normalmente, el procesamiento en streaming se produce inmediatamente, con la latencia en segundos o milisegundos.<\/li><li><em>An\u00e1lisis<\/em>: normalmente se usa el procesamiento por lotes para realizar an\u00e1lisis complejos. El procesamiento en streaming se usa para funciones de respuesta simples, agregaciones o c\u00e1lculos, como el c\u00e1lculo de la media acumulada.<\/li><\/ul>\n\n\n\n<h3 class=\"wp-block-heading\">Combinaci\u00f3n del procesamiento por lotes y por flujos<\/h3>\n\n\n\n<p>Muchas soluciones de an\u00e1lisis a gran escala incluyen una combinaci\u00f3n de procesamiento por lotes y de flujos, lo que permite el an\u00e1lisis de datos hist\u00f3ricos y en tiempo real. Es habitual que las soluciones de procesamiento de flujos capturen datos en tiempo real, los filtren o agreguen para procesarlos y los presenten a trav\u00e9s de paneles y visualizaciones en tiempo real (por ejemplo, muestran el total de autom\u00f3viles que han pasado por una carretera durante la hora actual), al tiempo que tambi\u00e9n se conservan los resultados procesados en un almac\u00e9n de datos para el an\u00e1lisis hist\u00f3rico junto con los datos procesados por lotes (por ejemplo, para habilitar el an\u00e1lisis de los vol\u00famenes de tr\u00e1fico durante el \u00faltimo a\u00f1o).<\/p>\n\n\n\n<p>Incluso cuando no se requiere el an\u00e1lisis o la visualizaci\u00f3n en tiempo real de los datos, las tecnolog\u00edas de flujos a menudo se usan para capturar datos en tiempo real y almacenarlos en un almac\u00e9n de datos para su posterior procesamiento por lotes (esto equivale a redirigir todos los autom\u00f3viles que viajan por una carretera a un aparcamiento antes de contarlos).<\/p>\n\n\n\n<p>En el diagrama siguiente se muestran algunos m\u00e9todos para combinar el procesamiento por lotes y de flujos en una arquitectura de an\u00e1lisis de datos a gran escala.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img decoding=\"async\" width=\"1024\" height=\"309\" src=\"\/wp-content\/uploads\/2022\/06\/lambda-architecture-1024x309.png\" alt=\"\" class=\"wp-image-9951\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/lambda-architecture-1024x309.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/lambda-architecture-300x90.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/lambda-architecture-768x231.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/lambda-architecture-1536x463.png 1536w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/lambda-architecture-2048x617.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ol class=\"wp-block-list\"><li>Los eventos de datos de un origen de datos de flujos se capturan en tiempo real.<\/li><li>Los datos de otros or\u00edgenes se ingieren en un almac\u00e9n de datos (a menudo, un\u00a0<em>lago de datos<\/em>) para el procesamiento por lotes.<\/li><li>Si no es necesario llevar a cabo an\u00e1lisis en tiempo real, los datos de flujos capturados se escriben en el almac\u00e9n de datos para su posterior procesamiento por lotes.<\/li><li>Cuando se requiere un an\u00e1lisis en tiempo real, se usa una tecnolog\u00eda de procesamiento de flujos para preparar los datos de flujos para el an\u00e1lisis o visualizaci\u00f3n en tiempo real. A menudo, se filtran o suman los datos por periodos de tiempo.<\/li><li>Los datos que no son de flujos se procesan por lotes peri\u00f3dicamente para prepararlos para el an\u00e1lisis y los resultados se conservan en un almac\u00e9n de datos anal\u00edticos (a menudo denominado\u00a0<em>almac\u00e9n de datos<\/em>) para el an\u00e1lisis hist\u00f3rico.<\/li><li>Los resultados del procesamiento de flujos tambi\u00e9n se pueden conservar en el almac\u00e9n de datos anal\u00edticos para admitir el an\u00e1lisis hist\u00f3rico.<\/li><li>Las herramientas anal\u00edticas y de visualizaci\u00f3n se usan para presentar y explorar los datos hist\u00f3ricos y en tiempo real.<\/li><\/ol>\n\n\n\n<p>Nota<\/p>\n\n\n\n<p>Entre las arquitecturas de soluciones usadas con m\u00e1s frecuencia para un procesamiento de datos de flujos y por lotes de manera combinada, se encuentran arquitecturas<em>lambda<\/em>\u00a0y\u00a0<em>delta<\/em>. Los detalles de estas arquitecturas est\u00e1n fuera del \u00e1mbito de este curso, pero incorporan tecnolog\u00edas tanto para el procesamiento de datos por lotes a gran escala como el procesamiento de flujos en tiempo real para crear una soluci\u00f3n anal\u00edtica de un extremo a otro.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Unidad 3: Exploraci\u00f3n de elementos comunes de la arquitectura de procesamiento de flujos<\/h2>\n\n\n\n<p>Existen muchas tecnolog\u00edas que puede usar para implementar una soluci\u00f3n de procesamiento de flujos, pero, aunque los detalles de implementaci\u00f3n espec\u00edficos pueden variar, existen elementos comunes para la mayor\u00eda de las arquitecturas de flujos.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Una arquitectura general para el procesamiento de flujos<\/h3>\n\n\n\n<p>En su forma m\u00e1s simple, una arquitectura de alto nivel para el procesamiento de flujos tiene el siguiente aspecto:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"253\" src=\"\/wp-content\/uploads\/2022\/06\/stream-architecture-1024x253.png\" alt=\"\" class=\"wp-image-9952\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/stream-architecture-1024x253.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/stream-architecture-300x74.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/stream-architecture-768x190.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/stream-architecture-1536x380.png 1536w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/stream-architecture-2048x507.png 2048w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ol class=\"wp-block-list\"><li>Un evento genera algunos datos. Podr\u00eda ser una se\u00f1al que emite un sensor, un mensaje de redes sociales que se publica, una entrada de archivo de registro que se escribe o cualquier otro evento que da como resultado algunos datos digitales.<\/li><li>Los datos generados se capturan en un\u00a0<em>origen<\/em>\u00a0de streaming para su procesamiento. En casos simples, el origen puede ser una carpeta de un almac\u00e9n de datos en la nube o una tabla de una base de datos. En soluciones de flujos m\u00e1s s\u00f3lidas, el origen puede ser una \u00abcola\u00bb que encapsula la l\u00f3gica para asegurarse de que los datos del evento se procesan en orden y que cada evento se procesa una sola vez.<\/li><li>Los datos del evento se procesan, a menudo mediante una consulta perpetua que opera en los datos del evento para seleccionar datos para tipos espec\u00edficos de eventos, valores de datos de proyectos o valores de datos sumados durante periodos de tiempo (basados en tiempo real, o\u00a0<em>plazos de tiempo<\/em>), por ejemplo, mediante el recuento del n\u00famero de emisiones de sensores por minuto.<\/li><li>Los resultados de la operaci\u00f3n de procesamiento de flujos se escriben en una salida (o\u00a0<em>receptor<\/em>), que puede ser un archivo, una tabla de base de datos, un panel visual en tiempo real u otra cola para su posterior procesamiento mediante una consulta de bajada posterior.<\/li><\/ol>\n\n\n\n<h3 class=\"wp-block-heading\">An\u00e1lisis en tiempo real en Azure<\/h3>\n\n\n\n<p>Microsoft&nbsp;Azure es compatible con numerosas tecnolog\u00edas que puede usar para implementar el an\u00e1lisis en tiempo real de los datos de streaming, entre las que se incluyen:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Azure Stream Analytics<\/strong>: soluci\u00f3n de plataforma como servicio (PaaS) que puede usar para definir\u00a0<em>trabajos de flujos<\/em>\u00a0que ingieren datos de un origen de flujos, aplican una consulta perpetua y escriben los resultados en una salida.<\/li><li><strong>Spark Structured Streaming<\/strong>: biblioteca de c\u00f3digo abierto que le permite desarrollar soluciones de flujos complejos en servicios basados en Apache Spark, como\u00a0<strong>Azure Synapse Analytics<\/strong>,\u00a0<strong>Azure Databricks<\/strong>, y\u00a0<strong>Azure HDInsight<\/strong>.<\/li><li><strong>Azure\u00a0Data Explorer<\/strong>: un servicio de an\u00e1lisis y bases de datos de alto rendimiento, optimizado para la ingesta y consulta de datos por lotes o en streaming con un elemento de serie temporal y que se puede usar como servicio de Azure independiente o como entorno de ejecuci\u00f3n de\u00a0<strong>Azure\u00a0Synapse Data Explorer<\/strong>\u00a0en un \u00e1rea de trabajo de Azure\u00a0Synapse Analytics.<\/li><\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><em>Or\u00edgenes<\/em>\u00a0para el procesamiento de flujos<\/h4>\n\n\n\n<p>Los siguientes servicios se usan normalmente para ingerir datos para el procesamiento de flujos en Azure:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Azure Event Hubs<\/strong>: servicio de ingesta de datos que puede usar para administrar colas de datos de eventos, lo que garantiza que cada evento se procese en orden, exactamente una vez.<\/li><li><strong>Azure IoT Hub<\/strong>: servicio de ingesta de datos similar a Azure Event Hubs, pero optimizado para administrar datos de eventos de dispositivos de\u00a0<em>Internet de las cosas<\/em>\u00a0(IoT).<\/li><li><strong>Azure Data Lake Store Gen 2<\/strong>: servicio de almacenamiento altamente escalable que se usa a menudo en escenarios de\u00a0<em>procesamiento por lotes<\/em>, pero que tambi\u00e9n se puede usar como origen de datos de flujos.<\/li><li><strong>Apache Kafka<\/strong>: soluci\u00f3n de ingesta de datos de c\u00f3digo abierto que se usa a menudo junto con Apache Spark. Puede usar Azure HDInsight para crear un cl\u00faster de Kafka.<\/li><\/ul>\n\n\n\n<h4 class=\"wp-block-heading\"><em>Receptores<\/em>\u00a0para el procesamiento de flujos<\/h4>\n\n\n\n<p>La salida del procesamiento de flujos a menudo se env\u00eda a los siguientes servicios:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Azure Event Hubs<\/strong>: se usa para poner en cola los datos procesados para su posterior procesamiento de bajada.<\/li><li><strong>Azure Data Lake Store Gen 2<\/strong>\u00a0o\u00a0<strong>Azure Blob Storage<\/strong>: se usan para conservar los resultados procesados como un archivo.<\/li><li><strong>Azure SQL Database<\/strong>,\u00a0<strong>Azure Synapse Analytics<\/strong>\u00a0o\u00a0<strong>Azure Databricks<\/strong>: se usan para conservar los resultados procesados en una tabla de base de datos para consultas y an\u00e1lisis.<\/li><li><strong>Microsoft Power BI<\/strong>: se usa para generar visualizaciones de datos en tiempo real en informes y paneles.<\/li><\/ul>\n\n\n\n<h2 class=\"wp-block-heading\">Unidad 4: Exploraci\u00f3n de Azure Stream Analytics<\/h2>\n\n\n\n<p>Azure Stream Analytics es un servicio para el procesamiento de eventos complejos y el an\u00e1lisis de datos de flujos. Stream Analytics se usa para:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Ingerir datos de una\u00a0<em>entrada<\/em>, como Azure Event Hubs, Azure IoT Hub o un contenedor de blobs de Azure Storage.<\/li><li>Procesar los datos con una\u00a0<em>consulta<\/em>\u00a0para seleccionar, proyectar y sumar valores de datos.<\/li><li>Escribir los resultados en una\u00a0<em>salida<\/em>, como Azure Data Lake Gen 2, Azure SQL Database, Azure Synapse Analytics, Azure Functions, Azure Event Hubs, Microsoft Power BI u otros.<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"452\" src=\"\/wp-content\/uploads\/2022\/06\/stream-analytics.png\" alt=\"\" class=\"wp-image-9953\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/stream-analytics.png 600w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/stream-analytics-300x226.png 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/figure>\n\n\n\n<p>Una vez iniciada, se ejecutar\u00e1 una consulta de Stream Analytics de forma perpetua para procesar nuevos datos a medida que llegan a la entrada y almacenar los resultados en la salida.<\/p>\n\n\n\n<p>Azure Stream Analytics es una opci\u00f3n tecnol\u00f3gica excelente cuando necesita capturar continuamente datos de un origen de streaming, filtrar o agregar esos datos y enviar los resultados a un almac\u00e9n de datos o proceso de bajada para su an\u00e1lisis e informes.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Trabajos y cl\u00fasteres de Azure Stream Analytics<\/h3>\n\n\n\n<p>La manera m\u00e1s f\u00e1cil de usar Azure Stream Analytics es crear un&nbsp;<em>trabajo<\/em>&nbsp;de Stream Analytics en una suscripci\u00f3n de Azure, configurar sus entradas y salidas, y definir la consulta que usar\u00e1 el trabajo para procesar los datos. La consulta se expresa mediante la sintaxis del lenguaje de consulta estructurado (SQL) y puede incorporar datos de referencia est\u00e1ticos de varios or\u00edgenes de datos para proporcionar valores de b\u00fasqueda que se pueden combinar con los datos de flujos ingeridos desde una entrada.<\/p>\n\n\n\n<p>Si los requisitos del proceso de flujos son complejos o consumen muchos recursos, puede crear un\u00a0<em>cl\u00faster<\/em>\u00a0de Stream Analysis, que usa el mismo motor de procesamiento subyacente que un trabajo de Stream Analytics, pero en un inquilino dedicado (por lo que el procesamiento no se ve afectado por otros clientes) y con escalabilidad configurable que le permite definir el equilibrio adecuado entre rendimiento y costo para su escenario espec\u00edfico.<\/p>\n\n\n\n<p>Nota<\/p>\n\n\n\n<p>Para obtener m\u00e1s informaci\u00f3n sobre las funciones de Azure Stream Analytics, consulte la\u00a0<a href=\"https:\/\/docs.microsoft.com\/es-ES\/azure\/stream-analytics\/\">documentaci\u00f3n de Azure Stream Analytics<\/a>.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Unidad 5: Ejercicio: an\u00e1lisis de datos de flujos<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Creaci\u00f3n de recursos de Azure (no sirvi\u00f3 con learn se hace con cuenta student)<\/h3>\n\n\n\n<p>En Azure Cloud Shell, escriba el siguiente comando para descargar los archivos que necesitar\u00e1 para este ejercicio.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>git clone https:\/\/github.com\/MicrosoftLearning\/DP-900T00A-Azure-Data-Fundamentals dp-900<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"979\" height=\"457\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_410.png\" alt=\"\" class=\"wp-image-9954\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_410.png 979w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_410-300x140.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_410-768x359.png 768w\" sizes=\"(max-width: 979px) 100vw, 979px\" \/><\/figure>\n\n\n\n<p>Espere a que se complete el comando y escriba el siguiente comando para cambiar el directorio actual a la carpeta que contiene los archivos de este ejercicio.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>cd dp-900\/streaming<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"359\" height=\"108\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_411.png\" alt=\"\" class=\"wp-image-9955\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_411.png 359w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_411-300x90.png 300w\" sizes=\"(max-width: 359px) 100vw, 359px\" \/><\/figure>\n\n\n\n<p>Escriba el siguiente comando para ejecutar un script que cree los recursos de Azure que necesitar\u00e1 en este ejercicio.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bash setup.sh<\/code><\/pre>\n\n\n\n<p>Espere mientras se ejecuta el script y este lleva a cabo las siguientes acciones:<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Instalar las extensiones de la CLI de Azure necesarias para crear recursos (<em>puede omitir las advertencias sobre las extensiones experimentales<\/em>)<\/li><li>Identifica el grupo de recursos de Azure proporcionado para este ejercicio, que tendr\u00e1 un nombre similar a\u00a0<strong>learn-<em>xxxxxxxxxxxxxxxxx&#8230;<\/em><\/strong>.<\/li><li>Crear un recurso de\u00a0<em>Azure IoT Hub<\/em>, que se usar\u00e1 para recibir un flujo de datos de un dispositivo simulado.<\/li><li>Crear una\u00a0<em>cuenta de Azure Storage<\/em>, que se usar\u00e1 para almacenar datos procesados.<\/li><li>Crear un trabajo de\u00a0<em>Azure Stream Analytics<\/em>, que procesar\u00e1 los datos del dispositivo entrantes en tiempo real y escribir los resultados en la cuenta de almacenamiento.<\/li><\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"936\" height=\"330\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_412.png\" alt=\"\" class=\"wp-image-9957\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_412.png 936w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_412-300x106.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_412-768x271.png 768w\" sizes=\"(max-width: 936px) 100vw, 936px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Exploraci\u00f3n de los recursos de Azure<\/h3>\n\n\n\n<p>En la p\u00e1gina principal de\u00a0<a href=\"https:\/\/portal.azure.com\/\">Azure\u00a0Portal<\/a>, seleccione\u00a0<strong>Grupos de recursos<\/strong>\u00a0para ver los grupos de recursos de la suscripci\u00f3n. Deber\u00eda incluir el grupo de recursos\u00a0<strong>learn-<em>xxxxxxxxxxxxxxxxx&#8230;<\/em><\/strong>\u00a0identificado por el script de configuraci\u00f3n.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>En la p\u00e1gina principal de\u00a0<a href=\"https:\/\/portal.azure.com\/\">Azure\u00a0Portal<\/a>, seleccione\u00a0<strong>Grupos de recursos<\/strong>\u00a0para ver los grupos de recursos de la suscripci\u00f3n. Deber\u00eda incluir el grupo de recursos\u00a0<strong>learn-<em>xxxxxxxxxxxxxxxxx&#8230;<\/em><\/strong>\u00a0identificado por el script de configuraci\u00f3n.<\/li><\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"270\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_413-1024x270.png\" alt=\"\" class=\"wp-image-9960\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_413-1024x270.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_413-300x79.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_413-768x203.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_413-1536x405.png 1536w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_413.png 1543w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<ol class=\"wp-block-list\"><li>Seleccione el grupo de recursos\u00a0<strong>learn-<em>xxxxxxxxxxxxxxxxx&#8230;<\/em><\/strong>\u00a0y revise los recursos que contiene, que deber\u00edan incluir los siguientes:<ul><li>Una instancia de\u00a0<em>IoT\u00a0Hub<\/em>\u00a0llamada\u00a0<strong>iothub<em>xxxxxxxxxxxxx<\/em><\/strong>, que se usa para recibir datos entrantes del dispositivo.<\/li><li>Una\u00a0<em>cuenta de almacenamiento<\/em>\u00a0llamada\u00a0<strong>store<em>xxxxxxxxxxxx<\/em><\/strong>, en la que se escribir\u00e1n los resultados del procesamiento de datos.<\/li><li>Un\u00a0<em>trabajo de Stream Analytics<\/em>\u00a0llamado\u00a0<strong>stream<em>xxxxxxxxxxxxx<\/em><\/strong>, que se usar\u00e1 para procesar datos streaming.Si no se muestran los tres recursos, haga clic en el bot\u00f3n\u00a0<strong>\u21bb Actualizar<\/strong>\u00a0hasta que aparezcan.<\/li><\/ul><\/li><\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"913\" height=\"602\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_414.png\" alt=\"\" class=\"wp-image-9961\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_414.png 913w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_414-300x198.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_414-768x506.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_414-120x80.png 120w\" sizes=\"(max-width: 913px) 100vw, 913px\" \/><\/figure>\n\n\n\n<p>&nbsp;Nota<\/p>\n\n\n\n<p>Si usa el espacio aislado de Learn, el grupo de recursos tambi\u00e9n puede contener una segunda\u00a0<em>cuenta de almacenamiento<\/em>\u00a0llamada\u00a0<strong>cloudshell<em>xxxxxxxx<\/em><\/strong>, que se usar\u00e1 a fin de almacenar datos para la instancia de Azure Cloud Shell que ha usado para ejecutar el script de configuraci\u00f3n.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Seleccione el trabajo de Stream Analytics\u00a0<strong>stream<em>xxxxxxxxxxxxx<\/em><\/strong>\u00a0y vea la informaci\u00f3n en la p\u00e1gina\u00a0<strong>Informaci\u00f3n general<\/strong>\u00a0y tenga en cuenta los detalles siguientes:<ul><li>El trabajo tiene una\u00a0<em>entrada<\/em>\u00a0llamada\u00a0<strong>iotinput<\/strong>\u00a0y una\u00a0<em>salida<\/em>\u00a0llamada\u00a0<strong>bloboutput<\/strong>. Hacen referencia a la instancia de IoT Hub y a la cuenta de almacenamiento creada por el script de configuraci\u00f3n.<\/li><li>El trabajo tiene una\u00a0<em>consulta<\/em>, que lee datos de la entrada\u00a0<strong>iotinput<\/strong>, los suma al contar el n\u00famero de mensajes procesados cada 10\u00a0segundos y escribe los resultados en la salida\u00a0<strong>bloboutput<\/strong>.<\/li><\/ul><\/li><\/ol>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"569\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_415-1024x569.png\" alt=\"\" class=\"wp-image-9962\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_415-1024x569.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_415-300x167.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_415-768x427.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_415.png 1049w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"420\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_416-1024x420.png\" alt=\"\" class=\"wp-image-9963\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_416-1024x420.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_416-300x123.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_416-768x315.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_416.png 1474w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Uso de los recursos para analizar datos de flujos<\/h3>\n\n\n\n<p>En la parte superior de la p\u00e1gina\u00a0<strong>Informaci\u00f3n general<\/strong>\u00a0del trabajo de Stream Analytics, seleccione el bot\u00f3n\u00a0<strong>\u25b7 Iniciar<\/strong>\u00a0y, despu\u00e9s, en el panel\u00a0<strong>Iniciar trabajo<\/strong>, seleccione\u00a0<strong>Iniciar<\/strong>\u00a0para iniciar el trabajo.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"560\" height=\"243\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_417.png\" alt=\"\" class=\"wp-image-9964\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_417.png 560w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_417-300x130.png 300w\" sizes=\"(max-width: 560px) 100vw, 560px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"391\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_418-1024x391.png\" alt=\"\" class=\"wp-image-9965\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_418-1024x391.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_418-300x114.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_418-768x293.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_418-1536x586.png 1536w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_418.png 1649w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Espere a recibir la notificaci\u00f3n de que el trabajo de flujo se inici\u00f3 correctamente.<\/p>\n\n\n\n<p>Vuelva a Azure Cloud Shell y escriba el comando siguiente para simular un dispositivo que env\u00eda datos a IoT Hub.<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>bash iotdevice.sh<\/code><\/pre>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"176\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_419-1024x176.png\" alt=\"\" class=\"wp-image-9966\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_419-1024x176.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_419-300x52.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_419-768x132.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_419-1536x265.png 1536w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_419.png 1915w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>Espere a que se inicie la simulaci\u00f3n, que se indicar\u00e1 mediante una salida como la siguiente:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code>Device simulation in progress: 6%|#    | 7\/120 &#91;00:08&lt;02:21, 1.26s\/it]<\/code><\/pre>\n\n\n\n<p>Mientras se ejecuta la simulaci\u00f3n, en Azure Portal, vuelva a la p\u00e1gina del grupo de recursos\u00a0<strong>learn-<em>xxxxxxxxxxxxxxxxx&#8230;<\/em><\/strong>\u00a0y seleccione la cuenta de almacenamiento\u00a0<strong>store<em>xxxxxxxxxxxx<\/em><\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"940\" height=\"554\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_420.png\" alt=\"\" class=\"wp-image-9967\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_420.png 940w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_420-300x177.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_420-768x453.png 768w\" sizes=\"(max-width: 940px) 100vw, 940px\" \/><\/figure>\n\n\n\n<p>En el panel de la izquierda de la hoja de la cuenta de almacenamiento, seleccione la pesta\u00f1a\u00a0<strong>Contenedores<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"510\" height=\"546\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_421-1.png\" alt=\"\" class=\"wp-image-9969\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_421-1.png 510w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_421-1-280x300.png 280w\" sizes=\"(max-width: 510px) 100vw, 510px\" \/><\/figure>\n\n\n\n<p>Abra el contenedor de\u00a0<strong>datos<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"742\" height=\"339\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_422.png\" alt=\"\" class=\"wp-image-9970\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_422.png 742w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_422-300x137.png 300w\" sizes=\"(max-width: 742px) 100vw, 742px\" \/><\/figure>\n\n\n\n<p>En el contenedor de\u00a0<strong>datos<\/strong>, navegue por la jerarqu\u00eda de carpetas, que incluye una carpeta para el a\u00f1o actual, con subcarpetas para el mes, el d\u00eda y la hora.<\/p>\n\n\n\n<p>En la carpeta de la hora, seleccione el archivo creado, que debe tener un nombre similar a\u00a0<strong>0_xxxxxxxxxxxxxxxx.json<\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"322\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_423-1024x322.png\" alt=\"\" class=\"wp-image-9971\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_423-1024x322.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_423-300x94.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_423-768x241.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_423.png 1309w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>En la p\u00e1gina del archivo, seleccione\u00a0<strong>Editar<\/strong>\u00a0y revise el contenido del archivo, que debe constar de un registro JSON para cada periodo de 10\u00a0segundos, que muestra el n\u00famero de mensajes recibidos de dispositivos IoT, como este:<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"388\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_424-1024x388.png\" alt=\"\" class=\"wp-image-9972\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_424-1024x388.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_424-300x114.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_424-768x291.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_424-1536x581.png 1536w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_424.png 1577w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"376\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_425-1024x376.png\" alt=\"\" class=\"wp-image-9973\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_425-1024x376.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_425-300x110.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_425-768x282.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_425.png 1510w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<pre class=\"wp-block-code\"><code>{\"starttime\":\"2021-10-23T01:02:13.2221657Z\",\"endtime\":\"2021-10-23T01:02:23.2221657Z\",\"device\":\"iotdevice\",\"messages\":2}\n{\"starttime\":\"2021-10-23T01:02:14.5366678Z\",\"endtime\":\"2021-10-23T01:02:24.5366678Z\",\"device\":\"iotdevice\",\"messages\":3}\n{\"starttime\":\"2021-10-23T01:02:15.7413754Z\",\"endtime\":\"2021-10-23T01:02:25.7413754Z\",\"device\":\"iotdevice\",\"messages\":4}\n...<\/code><\/pre>\n\n\n\n<p>Use el bot\u00f3n\u00a0<strong>\u21bb Actualizar<\/strong>\u00a0para actualizar el archivo. Tenga en cuenta que los resultados adicionales se escriben en el archivo cuando un trabajo de Stream Analytics procesa los datos del dispositivo en tiempo real a medida que se transmiten desde el dispositivo a IoT\u00a0Hub.<\/p>\n\n\n\n<p>Vuelva a Azure Cloud Shell y espere a que finalice la simulaci\u00f3n del dispositivo (deber\u00eda ejecutarse durante unos 3\u00a0minutos).<\/p>\n\n\n\n<p>De nuevo en Azure Portal, actualice el archivo una vez m\u00e1s para ver el conjunto completo de resultados que se produjeron durante la simulaci\u00f3n.<\/p>\n\n\n\n<p>Vuelva al grupo de recursos\u00a0<strong>learn-<em>xxxxxxxxxxxxxxxxx&#8230;<\/em><\/strong>\u00a0y vuelva a abrir el trabajo de Stream Analytics\u00a0<strong>stream<em>xxxxxxxxxxxxx<\/em><\/strong>.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"507\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_426-1024x507.png\" alt=\"\" class=\"wp-image-9975\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_426-1024x507.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_426-300x149.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_426-768x380.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_426.png 1214w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>En la parte superior de la p\u00e1gina del trabajo de Stream Analytics, use el bot\u00f3n\u00a0<strong>\u2b1c Detener<\/strong>\u00a0para detener el trabajo; conf\u00edrmelo cuando se lo solicite.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"401\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_427-1024x401.png\" alt=\"\" class=\"wp-image-9976\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_427-1024x401.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_427-300x118.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_427-768x301.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_427.png 1054w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"871\" height=\"143\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_428.png\" alt=\"\" class=\"wp-image-9978\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_428.png 871w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_428-300x49.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_428-768x126.png 768w\" sizes=\"(max-width: 871px) 100vw, 871px\" \/><\/figure>\n\n\n\n<h2 class=\"wp-block-heading\">MCT: Diapositiva: Azure Stream Analitytics<\/h2>\n\n\n\n<h3 class=\"wp-block-heading\">Azure Stream Analytics<\/h3>\n\n\n\n<p>Es un motor de procesamiento de eventos complejo y de an\u00e1lisis en tiempo real que est\u00e1 dise\u00f1ado para analizar y procesar grandes vol\u00famenes de datos de streaming r\u00e1pido para varios or\u00edgenes de manera simult\u00e1nea.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Escenarios de aplicaci\u00f3n<\/h3>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"758\" height=\"417\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_429.png\" alt=\"\" class=\"wp-image-9981\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_429.png 758w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_429-300x165.png 300w\" sizes=\"(max-width: 758px) 100vw, 758px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"469\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_430-1-1024x469.png\" alt=\"\" class=\"wp-image-9983\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_430-1-1024x469.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_430-1-300x137.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_430-1-768x352.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_430-1.png 1245w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Ingerir<\/h3>\n\n\n\n<p>Es f\u00e1cil empezar a usar Azure Stream Analytics, es posible conectarse a varios or\u00edgenes y receptores, creando una canalizaci\u00f3n integral.<\/p>\n\n\n\n<p><br>Stream Analytics puede conectarse directamente a Azure Event Hubs y Azure IoT Hub para la ingesta de datos de streaming, y con el servicio Azure Blob Storage para la ingesta de datos hist\u00f3ricos o SQL Database que puede unir a los datos de streaming para realizar operaciones de b\u00fasqueda..<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Entrega<\/h3>\n\n\n\n<p>Stream Analytics puede enrutar la salida del trabajo a muchos sistemas de almacenamiento como Azure Blob Storage, Azure SQL Database, Azure Data Lake Store y Azure Cosmos DB. Tambi\u00e9n se pueden realizar an\u00e1lisis por lotes de los resultados de la transmisi\u00f3n con Azure Synapse Analytics o HDInsight, o bien enviar la salida a otro servicio, como a Event Hubs para su consumo, o a Power BI para la visualizaci\u00f3n en tiempo real.<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Unidad 6: Exploraci\u00f3n de Apache Spark en Microsoft Azure<\/h2>\n\n\n\n<p>Apache Spark es un marco de procesamiento distribuido para el an\u00e1lisis de datos a gran escala. Puede usar Spark en Microsoft Azure en los siguientes servicios:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li>Azure Synapse Analytics<\/li><li>Azure Databricks<\/li><li>HDInsight de Azure<\/li><\/ul>\n\n\n\n<p>Spark se puede usar para ejecutar c\u00f3digo (normalmente escrito en Python, Scala o Java) en paralelo en varios nodos de cl\u00faster, lo que permite procesar vol\u00famenes de datos muy grandes de forma eficaz. Spark se puede usar tanto para el procesamiento por lotes como para el procesamiento de flujos.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Spark Structured Streaming<\/h3>\n\n\n\n<p>Para procesar los datos de flujos en Spark, puede usar la biblioteca de&nbsp;<em>Spark Structured Streaming<\/em>, que proporciona una interfaz de programaci\u00f3n de aplicaciones (API) para ingerir, procesar y generar resultados de flujos de datos perpetuos.<\/p>\n\n\n\n<p>Spark Structured Streaming se compila en una estructura ubicua en Spark denominada\u00a0<em>dataframe<\/em>, que encapsula una tabla de datos. Puede usar la API de Spark Structured Streaming para leer datos de un origen de datos en tiempo real, como un centro de Kafka, un almac\u00e9n de archivos o un puerto de red, a un objeto dataframe \u00absin l\u00edmite\u00bb que se rellena continuamente con nuevos datos del flujo. A continuaci\u00f3n, defina una consulta en el objeto dataframe que selecciona, proyecta o suma los datos, a menudo en ventanas temporales. Los resultados de la consulta generan otro objeto dataframe, que se puede conservar para su an\u00e1lisis o procesamiento posterior.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"600\" height=\"113\" src=\"\/wp-content\/uploads\/2022\/06\/spark-streaming-1.png\" alt=\"\" class=\"wp-image-9986\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/spark-streaming-1.png 600w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/spark-streaming-1-300x57.png 300w\" sizes=\"(max-width: 600px) 100vw, 600px\" \/><\/figure>\n\n\n\n<p>Structured Streaming de Spark es una excelente opci\u00f3n para el an\u00e1lisis en tiempo real cuando necesita incorporar datos de streaming en un almac\u00e9n de datos anal\u00edticos o un lago de datos basado en Spark.<\/p>\n\n\n\n<p>Nota<\/p>\n\n\n\n<p>Para obtener m\u00e1s informaci\u00f3n sobre Spark Structured Streaming, consulte la\u00a0<a href=\"https:\/\/spark.apache.org\/docs\/latest\/structured-streaming-programming-guide.html\">gu\u00eda de programaci\u00f3n de Spark Structured Streaming.<\/a><\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Delta Lake<\/h3>\n\n\n\n<p>Delta Lake es una capa de almacenamiento de c\u00f3digo abierto que agrega compatibilidad con la coherencia transaccional, el cumplimiento del esquema y otras caracter\u00edsticas comunes de almacenamiento de datos a Data Lake Storage. Tambi\u00e9n unifica el almacenamiento para datos por lotes y de flujos, y se puede usar en Spark para definir tablas relacionales para el procesamiento por lotes y de flujos. Cuando se usa para el procesamiento de flujos, una tabla de Delta Lake se puede usar como un origen de flujos para las consultas en datos en tiempo real o como un receptor en el que se escribe un flujo de datos.<\/p>\n\n\n\n<p>Los entornos de ejecuci\u00f3n de Spark de Azure Synapse Analytics y Azure Databricks incluyen compatibilidad con Delta Lake.<\/p>\n\n\n\n<p>El uso de Delta Lake combinado con Structured Streaming de Spark es una soluci\u00f3n \u00f3ptima cuando es necesario abstraer los datos procesados por lotes y flujos en un lago de datos detr\u00e1s de un esquema relacional para realizar consultas y an\u00e1lisis basados en SQL.<\/p>\n\n\n\n<p>&nbsp;Nota<\/p>\n\n\n\n<p>Para obtener m\u00e1s informaci\u00f3n sobre Delta Lake, consulte\u00a0<a href=\"https:\/\/docs.microsoft.com\/es-ES\/azure\/synapse-analytics\/spark\/apache-spark-what-is-delta-lake\">\u00bfQu\u00e9 es Delta Lake<\/a>?<\/p>\n\n\n\n<h2 class=\"wp-block-heading\">Unidad 7: Ejercicio: procesamiento de datos de flujos con Spark<\/h2>\n\n\n\n<p>En este ejercicio, usar\u00e1&nbsp;<em>Spark Structured Streaming<\/em>&nbsp;y&nbsp;<em>tablas delta<\/em>&nbsp;en Azure Synapse Analytics para procesar datos de flujos.<\/p>\n\n\n\n<p>Para completar este ejercicio, necesitar\u00e1 una suscripci\u00f3n a Microsoft\u00a0Azure. Si a\u00fan no tiene una, puede solicitar una prueba gratuita en\u00a0<a href=\"https:\/\/azure.microsoft.com\/free?portal=true\">https:\/\/azure.microsoft.com\/free<\/a>. No puede usar una suscripci\u00f3n de espacio aislado de Microsoft Learn para este ejercicio.<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Aprovisionar un \u00e1rea de trabajo de Synapse Analytics<\/h3>\n\n\n\n<p>Para usar Synapse Analytics, debe aprovisionar un recurso en el \u00e1rea de trabajo de Synapse Analytics en la suscripci\u00f3n de Azure.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Abra Azure Portal en\u00a0<a href=\"https:\/\/portal.azure.com\/\">Azure Portal<\/a>\u00a0e inicie sesi\u00f3n con las credenciales asociadas con su suscripci\u00f3n de Azure.<\/li><\/ol>\n\n\n\n<p>Aseg\u00farese de que est\u00e1 trabajando en el directorio que contiene su propia suscripci\u00f3n, lo que se indica en la parte superior derecha, debajo del identificador de usuario. Si no es as\u00ed, seleccione el icono de usuario y cambie el directorio. Tenga en cuenta que si anteriormente us\u00f3 una suscripci\u00f3n de espacio aislado de Microsoft Learn, es posible que el portal haya usado de forma predeterminada el directorio\u00a0<em>Microsoft Learn Sandbox<\/em>. Si es as\u00ed, deber\u00e1 cambiar a su propio directorio.<\/p>\n\n\n\n<p>En Azure Portal, en la p\u00e1gina\u00a0<strong>Inicio<\/strong>, use el icono\u00a0<strong>+ Crear<\/strong>\u00a0para recurso para crear un nuevo recurso.<\/p>\n\n\n\n<p>Busque&nbsp;<em>Azure Synapse Analytics<\/em>, y cree un recurso de&nbsp;<strong>Azure Synapse Analytics<\/strong>&nbsp;con la siguiente configuraci\u00f3n:<\/p>\n\n\n\n<ul class=\"wp-block-list\"><li><strong>Suscripci\u00f3n<\/strong>:\u00a0<em>suscripci\u00f3n de Azure<\/em><ul><li><strong>Grupo de recursos<\/strong>:\u00a0<em>cree un grupo de recursos con un nombre apropiado, como \u00absynapse-rg\u00bb<\/em>.<\/li><li><strong>Grupo de recursos administrado<\/strong>:\u00a0<em>escriba un nombre adecuado, por ejemplo, \u00absynapse-managed-rg\u00bb<\/em>.<\/li><\/ul><\/li><li><strong>Nombre del \u00e1rea de trabajo<\/strong>:\u00a0<em>escriba un nombre \u00fanico para el \u00e1rea de trabajo, por ejemplo, \u00absynapse-ws-su_nombre<\/em>.<\/li><li><strong>Regi\u00f3n<\/strong>:\u00a0<em>seleccione cualquier regi\u00f3n disponible<\/em>. <strong>no West Central US<\/strong><\/li><li><strong>Seleccionar Data Lake Storage Gen\u00a02<\/strong>: en la suscripci\u00f3n.<ul><li><strong>Nombre de cuenta<\/strong>:\u00a0<em>cree una cuenta con un nombre \u00fanico, por ejemplo, \u00abdatalakeyour_name\u00bb<\/em>.<\/li><li><strong>Nombre del sistema de archivos<\/strong>:\u00a0<em>cree un sistema de archivos con un nombre \u00fanico, por ejemplo, \u00abfsyour_name\u00bb<\/em>.<\/li><\/ul><\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"559\" height=\"278\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_431.png\" alt=\"\" class=\"wp-image-9988\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_431.png 559w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_431-300x149.png 300w\" sizes=\"(max-width: 559px) 100vw, 559px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"833\" height=\"729\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_432.png\" alt=\"\" class=\"wp-image-9989\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_432.png 833w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_432-300x263.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_432-768x672.png 768w\" sizes=\"(max-width: 833px) 100vw, 833px\" \/><\/figure>\n\n\n\n<p>&nbsp;Nota<\/p>\n\n\n\n<p>Un \u00e1rea de trabajo de Synapse Analytics requiere dos grupos de recursos en la suscripci\u00f3n de Azure; uno para los recursos creados expl\u00edcitamente y otro para los recursos administrados utilizados por el servicio. Tambi\u00e9n requiere una cuenta de almacenamiento de Data Lake en la que almacenar datos, scripts y otros artefactos.<\/p>\n\n\n\n<p>Cuando haya especificado estos detalles, seleccione\u00a0<strong>Revisar y crear<\/strong>\u00a0y, a continuaci\u00f3n, seleccione\u00a0<strong>Crear<\/strong>\u00a0para crear el \u00e1rea de trabajo.<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"848\" height=\"897\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_433.png\" alt=\"\" class=\"wp-image-9990\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_433.png 848w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_433-284x300.png 284w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_433-768x812.png 768w\" sizes=\"(max-width: 848px) 100vw, 848px\" \/><\/figure>\n\n\n\n<p>Espere a que se cree el \u00e1rea de trabajo; puede tardar unos cinco minutos.<\/p>\n\n\n\n<p>Una vez completada la implementaci\u00f3n, vaya al grupo de recursos que se cre\u00f3 y observe que contiene el \u00e1rea de trabajo de Synapse Analytics y una cuenta de almacenamiento de Data Lake.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"360\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_434-1024x360.png\" alt=\"\" class=\"wp-image-9993\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_434-1024x360.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_434-300x106.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_434-768x270.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_434.png 1270w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"751\" height=\"574\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_435.png\" alt=\"\" class=\"wp-image-9994\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_435.png 751w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_435-300x229.png 300w\" sizes=\"(max-width: 751px) 100vw, 751px\" \/><\/figure>\n\n\n\n<p>Seleccione el \u00e1rea de trabajo de Synapse y, en su p\u00e1gina\u00a0<strong>Informaci\u00f3n general<\/strong>, en la tarjeta\u00a0<strong>Abrir Synapse Studio<\/strong>, seleccione\u00a0<strong>Abrir<\/strong>\u00a0para abrir Synapse Studio en una nueva pesta\u00f1a del explorador. Synapse Studio es una interfaz basada en web que puede usar para trabajar con el \u00e1rea de trabajo de Synapse Analytics.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"230\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_436-1024x230.png\" alt=\"\" class=\"wp-image-9996\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_436-1024x230.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_436-300x67.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_436-768x173.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_436.png 1116w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"682\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_437-1024x682.png\" alt=\"\" class=\"wp-image-9997\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_437-1024x682.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_437-300x200.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_437-768x512.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_437-120x80.png 120w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_437.png 1039w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<p>En el lado izquierdo de Synapse Studio, use el icono\u00a0<strong>\u203a\u203a<\/strong>\u00a0para expandir el men\u00fa; esto muestra las distintas p\u00e1ginas de Synapse Studio que usar\u00e1 para administrar recursos y realizar tareas de an\u00e1lisis de datos, como se muestra aqu\u00ed:<\/p>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"510\" height=\"468\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_438.png\" alt=\"\" class=\"wp-image-9999\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_438.png 510w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_438-300x275.png 300w\" sizes=\"(max-width: 510px) 100vw, 510px\" \/><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\">Crear un grupo de Spark<\/h3>\n\n\n\n<p>Para usar Spark para procesar datos de flujos, tiene que agregar un grupo de Spark al \u00e1rea de trabajo de Azure Synapse.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>En Synapse Studio, seleccione la p\u00e1gina\u00a0<strong>Administrar<\/strong>.<\/li><\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"699\" height=\"444\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_439.png\" alt=\"\" class=\"wp-image-10000\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_439.png 699w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_439-300x191.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_439-360x230.png 360w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_439-600x380.png 600w\" sizes=\"(max-width: 699px) 100vw, 699px\" \/><\/figure>\n\n\n\n<ol class=\"wp-block-list\"><li>Seleccione la pesta\u00f1a\u00a0<strong>Grupos de Apache Spark<\/strong>\u00a0y, despu\u00e9s, use el icono\u00a0<strong>+\u00a0Nuevo<\/strong>\u00a0para crear un grupo de Spark con la configuraci\u00f3n siguiente:<ul><li><strong>Nombre del grupo de Apache Spark<\/strong>: sparkpool<\/li><li><strong>Familia de tama\u00f1os de nodo<\/strong>: optimizada para memoria<\/li><li><strong>Tama\u00f1o del nodo<\/strong>: peque\u00f1o (4\u00a0n\u00facleos virtuales\/32\u00a0GB)<\/li><li><strong>Escalabilidad autom\u00e1tica<\/strong>: habilitada<\/li><li><strong>N\u00famero de nodos<\/strong>: 3&#8212;-3<\/li><\/ul><\/li><\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"950\" height=\"491\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_440.png\" alt=\"\" class=\"wp-image-10001\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_440.png 950w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_440-300x155.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_440-768x397.png 768w\" sizes=\"(max-width: 950px) 100vw, 950px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"603\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_441-1-1024x603.png\" alt=\"\" class=\"wp-image-10003\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_441-1-1024x603.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_441-1-300x177.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_441-1-768x452.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_441-1.png 1459w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"526\" height=\"867\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_442.png\" alt=\"\" class=\"wp-image-10004\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_442.png 526w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_442-182x300.png 182w\" sizes=\"(max-width: 526px) 100vw, 526px\" \/><\/figure>\n\n\n\n<p>Revise y cree el grupo de Spark y espere a que se implemente (puede tardar unos minutos).<\/p>\n\n\n\n<h3 class=\"wp-block-heading\">Exploraci\u00f3n del procesamiento de flujos<\/h3>\n\n\n\n<p>Para explorar el procesamiento de flujos con Spark, usar\u00e1 un cuaderno que contiene c\u00f3digo y notas de Python para ayudarlo a llevar a cabo alg\u00fan procesamiento de flujos b\u00e1sico con Spark Structured Streaming y tablas delta.<\/p>\n\n\n\n<ol class=\"wp-block-list\"><li>Descargue el cuaderno\u00a0<a href=\"https:\/\/github.com\/MicrosoftLearning\/DP-900T00A-Azure-Data-Fundamentals\/raw\/master\/streaming\/Spark%20Structured%20Streaming%20and%20Delta%20Tables.ipynb\">Structured Streaming and Delta Tables.ipynb<\/a>\u00a0en su equipo local (si el cuaderno se abre como archivo de texto en el explorador, gu\u00e1rdelo en una carpeta local; tenga en cuenta que debe guardarlo como\u00a0<strong>Structured Streaming and Delta Tables.ipynb<\/strong>, no como archivo .txt)<\/li><li>En Synapse Studio, seleccione la p\u00e1gina\u00a0<strong>Desarrollar<\/strong>.<\/li><li>En el men\u00fa\u00a0<strong>\uff0b<\/strong>, seleccione\u00a0<strong>\u21a4 Importar<\/strong>\u00a0y despu\u00e9s el archivo\u00a0<strong>Structured Streaming and Delta Tables.ipynb<\/strong>\u00a0en el equipo local.<\/li><\/ol>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"829\" height=\"443\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_443.png\" alt=\"\" class=\"wp-image-10006\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_443.png 829w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_443-300x160.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_443-768x410.png 768w\" sizes=\"(max-width: 829px) 100vw, 829px\" \/><\/figure>\n\n\n\n<p>Siga las instrucciones del cuaderno para adjuntarlo al grupo de Spark y ejecutar las celdas de c\u00f3digo que contiene para explorar varias maneras de usar Spark para el procesamiento de flujos.<\/p>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"424\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_444-1024x424.png\" alt=\"\" class=\"wp-image-10007\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_444-1024x424.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_444-300x124.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_444-768x318.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_444-1536x635.png 1536w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_444.png 1883w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"790\" height=\"429\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_446.png\" alt=\"\" class=\"wp-image-10011\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_446.png 790w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_446-300x163.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_446-768x417.png 768w\" sizes=\"(max-width: 790px) 100vw, 790px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-large\"><img loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"524\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_445-1024x524.png\" alt=\"\" class=\"wp-image-10009\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_445-1024x524.png 1024w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_445-300x154.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_445-768x393.png 768w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_445.png 1145w\" sizes=\"(max-width: 1024px) 100vw, 1024px\" \/><\/figure>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"904\" height=\"171\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_447-1.png\" alt=\"\" class=\"wp-image-10014\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_447-1.png 904w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_447-1-300x57.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_447-1-768x145.png 768w\" sizes=\"(max-width: 904px) 100vw, 904px\" \/><\/figure>\n\n\n\n<ul class=\"wp-block-list\"><li>Tarda un rato<\/li><\/ul>\n\n\n\n<figure class=\"wp-block-image size-full\"><img loading=\"lazy\" decoding=\"async\" width=\"885\" height=\"386\" src=\"\/wp-content\/uploads\/2022\/06\/Seleccion_449.png\" alt=\"\" class=\"wp-image-10018\" srcset=\"https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_449.png 885w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_449-300x131.png 300w, https:\/\/sada.services\/wp-content\/uploads\/2022\/06\/Seleccion_449-768x335.png 768w\" sizes=\"(max-width: 885px) 100vw, 885px\" \/><\/figure>\n","protected":false},"excerpt":{"rendered":"<p>https:\/\/docs.microsoft.com\/es-mx\/learn\/modules\/explore-fundamentals-stream-processing\/ Unidad 1: Introducci\u00f3n Un mayor uso de la tecnolog\u00eda por parte de personas, empresas y otras organizaciones, junto con la proliferaci\u00f3n de dispositivos inteligentes y acceso a Internet, ha generado un crecimiento masivo del volumen de datos que se pueden generar, capturar y analizar. Gran parte de estos datos se pueden procesar en tiempo [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[390],"tags":[398,391],"class_list":["post-9944","post","type-post","status-publish","format-standard","hentry","category-cursos","tag-dp-900","tag-microsoft-azure"],"blocksy_meta":{"styles_descriptor":{"styles":{"desktop":"","tablet":"","mobile":""},"google_fonts":[],"version":6}},"_links":{"self":[{"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts\/9944","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=9944"}],"version-history":[{"count":24,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts\/9944\/revisions"}],"predecessor-version":[{"id":10020,"href":"https:\/\/sada.services\/index.php?rest_route=\/wp\/v2\/posts\/9944\/revisions\/10020"}],"wp:attachment":[{"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=9944"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=9944"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/sada.services\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=9944"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}