¿Qué es Azure Stream Analytics?What is Azure Stream Analytics?

Azure Stream Analytics es un motor de procesamiento de eventos complejo y de análisis en tiempo real que está diseñado para analizar y procesar grandes volúmenes de datos de streaming rápido para varios orígenes de manera simultánea.Azure Stream Analytics is a real-time analytics and complex event-processing engine that is designed to analyze and process high volumes of fast streaming data from multiple sources simultaneously. Los patrones y las relaciones se pueden identificar en la información extraída de varios orígenes de entrada, como dispositivos, sensores, secuencias de clics, fuentes de medios sociales y aplicaciones.Patterns and relationships can be identified in information extracted from a number of input sources including devices, sensors, clickstreams, social media feeds, and applications. Estos patrones se pueden usar para desencadenar acciones e iniciar flujos de trabajo, como la creación de alertas, la provisión de información a una herramienta de generación de informes o el almacenamiento de datos transformados para usarlos posteriormente.These patterns can be used to trigger actions and initiate workflows such creating alerts, feeding information to a reporting tool, or storing transformed data for later use. Además, Stream Analytics está disponible en el entorno de ejecución de Azure IoT Edge y admite exactamente el mismo lenguaje o sintaxis que la nube.Also, Stream Analytics is available on Azure IoT Edge runtime, and supports the same exact language or syntax as cloud.

Los escenarios siguientes son ejemplos de cuándo puede usar Azure Stream Analytics:The following scenarios are examples of when you can use Azure Stream Analytics:

  • Análisis de los flujos de telemetría en tiempo real desde dispositivos IoT.Analyze real-time telemetry streams from IoT devices
  • Análisis clickstream y de registros webWeb logs/clickstream analytics
  • Análisis geoespacial para la administración de flotas y vehículos sin conductorGeospatial analytics for fleet management and driverless vehicles
  • Supervisión remota y mantenimiento predictivo de recursos de gran valor.Remote monitoring and predictive maintenance of high value assets
  • Análisis en tiempo real de datos de punto de venta para el control de inventario y la detección de anomalíasReal-time analytics on Point of Sale data for inventory control and anomaly detection

¿Cómo funciona Stream Analytics?How does Stream Analytics work?

Un trabajo de Azure Stream Analytics consta de una entrada, una consulta y una salida.An Azure Stream Analytics job consists of an input, query, and an output. Stream Analytics ingiere datos de Azure Event Hubs, Azure IoT Hub o Azure Blob Storage.Stream Analytics ingests data from Azure Event Hubs, Azure IoT Hub, or Azure Blob Storage. La consulta, que se basa en el lenguaje de consulta SQL, se puede usar para filtrar, ordenar, agregar y unir con facilidad los datos de transmisión a lo largo de un período de tiempo.The query, which is based on SQL query language, can be used to easily filter, sort, aggregate, and join streaming data over a period of time. También puede ampliar este lenguaje SQL con funciones definidas por el usuario (UDF) de C# y JavaScript.You can also extend this SQL language with JavaScript and C# user defined functions (UDFs). Puede ajustar fácilmente las opciones de ordenación de eventos y la duración de las ventanas de tiempo al realizar operaciones de agregación mediante configuraciones o construcciones de lenguaje sencillas.You can easily adjust the event ordering options and duration of time windows when preforming aggregation operations through simple language constructs and/or configurations.

Cada trabajo tiene una salida para los datos transformados, y puede controlar lo que ocurre en respuesta a la información que ha analizado.Each job has an output for the transformed data, and you can control what happens in response to the information you've analyzed. Por ejemplo, puede:For example, you can:

  • Enviar datos a servicios como Azure Functions, Temas o Colas de Service Bus para desencadenar comunicaciones o flujos de trabajo personalizados de bajada.Send data to services such as Azure Functions, Service Bus Topics or Queues to trigger communications or custom workflows downstream.
  • Enviar datos al panel de Power BI para ordenarlos en el panel en tiempo real.Send data to a Power BI dashboard for real-time dashboarding.
  • Almacenar los datos en otros servicios de Azure Storage para entrenar un modelo de Machine Learning basado en datos históricos o realizar un análisis por lotes.Store data in other Azure storage services to train a machine learning model based on historical data or perform batch analytics.

La imagen siguiente muestra cómo se envían los datos a Stream Analytics, se analizan y se envían para realizar otras acciones, como el almacenamiento o la presentación:The following image shows how data is sent to Stream Analytics, analyzed, and sent for other actions like storage or presentation:

Canalización de introducción de Stream Analytics

Ventajas y principales capacidadesKey capabilities and benefits

Azure Stream Analytics se ha diseñado para ser fácil de usar, flexible, confiable y escalable a cualquier tamaño de trabajo.Azure Stream Analytics is designed to be easy to use, flexible, reliable, and scalable to any job size. Está disponible en varias regiones de Azure.It is available across multiple Azure regions. La siguiente imagen muestra las principales funcionalidades de Azure Stream Analytics:The following image illustrates the key capabilities of Azure Stream Analytics:

Principales funcionalidades de Stream Analytics

Facilidad para empezarEase of getting started

Es fácil empezar a usar Azure Stream Analytics.Azure Stream Analytics is easy to start. Con pocos clics es posible conectarse a varios orígenes y receptores, creando una canalización integral.It only takes a few clicks to connect to multiple sources and sinks, creating an end-to-end pipeline. 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óricos.Stream Analytics can connect to Azure Event Hubs and Azure IoT Hub for streaming data ingestion, as well as Azure Blob storage to ingest historical data. La entrada del trabajo también puede incluir datos de referencia estáticos o que cambien lentamente de Azure Blob Storage o SQL Database que puede unir a los datos de streaming para realizar operaciones de búsqueda.Job input can also include static or slow-changing reference data from Azure Blob storage or SQL Database that you can join to streaming data to perform lookup operations.

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.Stream Analytics can route job output to many storage systems such as Azure Blob storage, Azure SQL Database, Azure Data Lake Store, and Azure CosmosDB. Se pueden realizar análisis por lotes en los resultados almacenados con Azure HDInsight o enviar la salida a otro servicio, como a Event Hubs para su consumo, o a Power BI para la visualización en tiempo rea.You can run batch analytics on stored output with Azure HDInsight, or you can send the output to another service, like Event Hubs for consumption or Power BI for real-time visualization.

Para obtener la lista completa de las salidas de Stream Analytics, consulte Información sobre las salidas desde Azure Stream Analytics.For the entire list of Stream Analytics outputs, see Understand outputs from Azure Stream Analytics.

Productividad del programadorProgrammer productivity

Azure Stream Analytics usa un lenguaje de consulta simple basado en SQL que se ha mejorado con eficaces restricciones temporales para analizar datos en movimiento.Azure Stream Analytics uses a simple SQL-based query language that has been augmented with powerful temporal constraints to analyze data in motion. Para definir las transformaciones de los trabajos, se utiliza un simple lenguaje de consulta de Stream Analytics declarativo que permite crear complejos análisis y consultas temporales mediante simples construcciones SQL.To define job transformations, you use a simple, declarative Stream Analytics query language that lets you author complex temporal queries and analytics using simple SQL constructs. Puesto que el lenguaje de consulta de Stream Analytics concuerda con el lenguaje SQL, el mero conocimiento de este permite empezar a crear trabajos.Because Stream Analytics query language is consistent to the SQL language, familiarity with SQL is sufficient to start creating jobs. También se pueden crear trabajos mediante herramientas de desarrollo como Azure PowerShell, herramientas de Stream Analytics para Visual Studio, la extensión de Visual Studio Code de Stream Analytics o plantillas de Azure Resource Manager.You can also create jobs by using developer tools like Azure PowerShell, Stream Analytics Visual Studio tools, the Stream Analytics Visual Studio Code extension, or Azure Resource Manager templates. Las herramientas de desarrollo permiten desarrollar consultas de transformación sin conexión y usar la canalización de CI/CD para enviar trabajos a Azure.Using developer tools allow you to develop transformation queries offline and use the CI/CD pipeline to submit jobs to Azure.

El lenguaje de consulta de Stream Analytics ofrece una amplia matriz de funciones para analizar y procesar los datos de streaming.The Stream Analytics query language offers a wide array of functions for analyzing and processing streaming data. Este lenguaje de consulta admite la manipulación simple de datos, la agregación de funciones y las complejas funciones geoespaciales.This query language supports simple data manipulation, aggregation functions, and complex geospatial functions. Las consultas se pueden editar en el portal y se pueden probar con datos de ejemplo que se extraen de la secuencia en directo.You can edit queries in the portal and test them using sample data that is extracted from a live stream.

Puede ampliar la funcionalidad del lenguaje de consulta si define e invoca funciones adicionales.You can extend the capabilities of the query language by defining and invoking additional functions. Puede definir que las llamadas a funciones de Azure Machine Learning se aprovechen de las soluciones de Azure Machine Learning e integren las funciones definidas por el usuario (UDF) de JavaScript o C#, así como los agregados definidos por el usuario, para realizar cálculos complejos como parte de una consulta de Stream Analytics.You can define function calls in the Azure Machine Learning to take advantage of Azure Machine Learning solutions, and integrate JavaScript or C# user-defined functions (UDFs) or user-defined aggregates to perform complex calculations as part a Stream Analytics query.

Completamente administradaFully managed

Azure Stream Analytics es una oferta sin servidor totalmente administrada (PaaS) en Azure.Azure Stream Analytics is a fully managed serverless (PaaS) offering on Azure. No es preciso aprovisionar hardware ni administrar clústeres para ejecutar los trabajos.You don’t have to provision any hardware or manage clusters to run your jobs. Azure Stream Analytics administra totalmente el trabajo configurando clústeres de proceso complejos en la nube y ocupándose del ajuste del rendimiento necesario para ejecutar el trabajo.Azure Stream Analytics fully manages your job by setting up complex compute clusters in the cloud and taking care of the performance tuning necessary to run the job. La integración con Azure Event Hubs y Azure IoT Hub permite que el trabajo ingiera millones de eventos por segundo procedentes de diferentes orígenes, para incluir dispositivos conectados, secuencias de clic y archivos de registro.Integration with Azure Event Hubs and Azure IoT Hub allows your job to ingest millions of events per second coming from a number of sources, to include connected devices, clickstreams, and log files. Mediante la característica de creación de particiones de Event Hubs, puede dividir los cálculos en pasos lógicos, cada uno de ellos con la capacidad de ser subdividido aún más para aumentar la escalabilidad.Using the partitioning feature of Event Hubs, you can partition computations into logical steps, each with the ability to be further partitioned to increase scalability.

Ejecución en la nube o en el sistema de inteligencia perimetralRun in the cloud or on the intelligent edge

Azure Stream Analytics se puede ejecutar en la nube, para realizar análisis a gran escala, o en IoT Edge para un análisis con latencia muy baja.Azure Stream Analytics can run in the cloud, for large-scale analytics, or run on IoT Edge for ultra-low latency analytics. Azure Stream Analytics usa el mismo lenguaje de consulta en la nube y en el sistema perimetral, lo que permite a los desarrolladores compilar arquitecturas verdaderamente híbridas para el procesamiento de flujos.Azure Stream Analytics uses the same query language on both cloud and the edge, enabling developers to build truly hybrid architectures for stream processing.

Costo total de propiedad bajoLow total cost of ownership

Como servicio en la nube, Stream Analytics se optimiza por motivos de costo.As a cloud service, Stream Analytics is optimized for cost. No hay costos iniciales, solo se pagan las unidades de streaming que se consuman y la cantidad de datos procesados.There are no upfront costs involved - you only pay for the streaming units you consume, and the amount of data processed. No se requiere compromiso ni aprovisionamiento de clústeres, y puede escalar o reducir verticalmente el trabajo según las necesidades de su negocio.There is no commitment or cluster provisioning required, and you can scale the job up or down based on your business needs.

Preparado para situaciones críticasMission-critical ready

Azure Stream Analytics está disponible en varias regiones de todo el mundo y está diseñado para ejecutar cargas de trabajo críticas al respaldar los requisitos de confiabilidad, seguridad y cumplimiento.Azure Stream Analytics is available across multiple regions worldwide and is designed to run mission-critical workloads by supporting reliability, security and compliance requirements.

ConfiabilidadReliability

Azure Stream Analytics garantiza el procesamiento de eventos exactamente una vez y la entrega de eventos por lo menos una vez, así que los eventos nunca se pierden.Azure Stream Analytics guarantees exactly-once event processing and at-least-once delivery of events, so events are never lost. El procesamiento exactamente una vez está garantizado con la salida seleccionada, como se describe en Event Delivery Guarantees (Garantías de entrega de contenido).Exactly-once processing is guaranteed with selected output as described in Event Delivery Guarantees.

Azure Stream Analytics presenta funcionalidades de recuperación integradas en caso de que se produzca un error en la entrega de un evento.Azure Stream Analytics has built-in recovery capabilities in case the delivery of an event fails. Además, Stream Analytics proporciona puntos de comprobación integrados para mantener el estado del trabajo y proporciona resultados repetibles.Stream Analytics also provides built-in checkpoints to maintain the state of your job and provides repeatable results.

Como servicio administrado, Stream Analytics garantiza un procesamiento de eventos con una disponibilidad del 99,9 % por minuto de granularidad.As a managed service, Stream Analytics guarantees event processing with a 99.9% availability at a minute level of granularity. Para más información, consulte la página Contrato de nivel de servicio para Azure Stream Analytics.For more information, see the Stream Analytics SLA page.

SeguridadSecurity

En cuanto a seguridad, Azure Stream Analytics cifra todas las comunicaciones entrantes y salientes y es compatible con TLS 1.2.In terms of security, Azure Stream Analytics encrypts all incoming and outgoing communications and supports TLS 1.2. También se cifran los puntos de control integrados.Built-in checkpoints are also encrypted. Stream Analytics no almacena los datos entrantes, ya que todo el procesamiento se realiza en memoria.Stream Analytics doesn't store the incoming data since all processing is done in-memory.

Cumplimiento normativoCompliance

Azure Stream Analytics sigue varias certificaciones de cumplimiento, como se describe en la información general de cumplimiento de Azure.Azure Stream Analytics follows multiple compliance certifications as described in the overview of Azure compliance.

RendimientoPerformance

Stream Analytics puede procesar millones de eventos por segundo y ofrecer resultados con latencia muy baja.Stream Analytics can process millions of events every second and it can deliver results with ultra low latencies. Permite el escalado vertical y horizontal para controlar las aplicaciones grandes de procesamiento de eventos complejos y en tiempo real.It allows you to scale-up and scale-out to handle large real-time and complex event processing applications. Stream Analytics permite un rendimiento más alto gracias a la creación de particiones, lo que permite que las consultas complejas se puedan procesar en paralelo y ejecutar en varios nodos de streaming.Stream Analytics supports higher performance by partitioning, allowing complex queries to be parallelized and executed on multiple streaming nodes. Azure Stream Analytics se basa en Trill, un motor de análisis de streaming de alto rendimiento y en memoria desarrollado en colaboración con Microsoft Research.Azure Stream Analytics is built on Trill, a high-performance in-memory streaming analytics engine developed in collaboration with Microsoft Research.

Pasos siguientesNext steps

Ya tiene información general acerca de Azure Stream Analytics.You now have an overview of Azure Stream Analytics. A continuación, puede profundizar y crear su primer trabajo de Stream Analytics:Next, you can dive deep and create your first Stream Analytics job: