O que é o Azure Stream Analytics?What is Azure Stream Analytics?

O Azure Stream Analytics é um mecanismo de processamento de eventos complexos e análise em tempo real desenvolvido para analisar e processar simultaneamente altos volumes de dados de streaming rápido a partir de várias fontes.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. É possível identificar padrões e relações em informações extraídas de diversas fontes de entrada, incluindo dispositivos, sensores, sequências de cliques, feeds de mídias sociais e aplicativos.Patterns and relationships can be identified in information extracted from a number of input sources including devices, sensors, clickstreams, social media feeds, and applications. Esses padrões podem ser usados para disparar outras ações e iniciar fluxos de trabalho, como criação de alertas, informações de feed para uma ferramenta de relatórios, ou para armazenar dados transformados para uso posterior.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. O Stream Analytics também está disponível no tempo de execução do IoT Edge do Azure e é compatível com a mesma linguagem ou sintaxe que a nuvem.Also, Stream Analytics is available on Azure IoT Edge runtime, and supports the same exact language or syntax as cloud.

Os cenários a seguir são exemplos de quando você pode usar o Azure Stream Analytics:The following scenarios are examples of when you can use Azure Stream Analytics:

  • Analisar streams de telemetria em tempo real de dispositivos IoTAnalyze real-time telemetry streams from IoT devices
  • Análise de sequência de cliques/blogsWeb logs/clickstream analytics
  • Análise geoespacial para gerenciamento de frotas e veículos sem motoristasGeospatial analytics for fleet management and driverless vehicles
  • Monitoramento remoto e manutenção preditiva de ativos de alto valorRemote monitoring and predictive maintenance of high value assets
  • Análise em tempo real em dados de pontos de venda para detecção de anomalias e controle de estoqueReal-time analytics on Point of Sale data for inventory control and anomaly detection

Como funciona o Stream Analytics?How does Stream Analytics work?

Um trabalho do Azure Stream Analytics consiste em uma entrada, uma consulta e uma saída.An Azure Stream Analytics job consists of an input, query, and an output. O Stream Analytics ingere dados dos Hubs de Eventos do Azure, do Hub IoT do Azure ou do Armazenamento de Blobs do Azure.Stream Analytics ingests data from Azure Event Hubs, Azure IoT Hub, or Azure Blob Storage. A consulta, que tem como base a linguagem de consulta SQL, pode ser usada para filtrar, classificar, agregar e associar dados de streaming com facilidade por um período de tempo.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. Também é possível estender essa linguagem SQL com UDFs (funções definidas pelo usuário) de JavaScript e C#.You can also extend this SQL language with JavaScript and C# user defined functions (UDFs). Você pode ajustar com facilidade as opções de ordenação de eventos e a duração das janelas de tempo na execução de operações de agregação por configurações e/ou constructos de linguagem.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 trabalho tem uma saída para os dados transformados e você pode controlar o que deve ser feito em resposta às informações analisadas.Each job has an output for the transformed data, and you can control what happens in response to the information you've analyzed. Por exemplo, você pode:For example, you can:

  • Enviar dados para serviços como Azure Functions, Filas ou Tópicos do Barramento de Serviço para disparar comunicações ou de fluxos de trabalho personalizados downstream.Send data to services such as Azure Functions, Service Bus Topics or Queues to trigger communications or custom workflows downstream.
  • Enviar dados a um painel do Power BI para painéis em tempo real.Send data to a Power BI dashboard for real-time dashboarding.
  • Armazenar dados em outros serviços de armazenamento do Azure para treinar um modelo de machine learning com base em dados históricos ou para executar análise em lote.Store data in other Azure storage services to train a machine learning model based on historical data or perform batch analytics.

A imagem a seguir mostra como os dados são enviados ao Stream Analytics, analisados e enviados para outras ações, como armazenamento ou apresentação:The following image shows how data is sent to Stream Analytics, analyzed, and sent for other actions like storage or presentation:

Pipeline de introdução do Stream Analytics

Principais recursos e benefíciosKey capabilities and benefits

O Azure Stream Analytics foi projetado para ser fácil de usar, flexível, confiável e escalonável para qualquer tamanho de trabalho.Azure Stream Analytics is designed to be easy to use, flexible, reliable, and scalable to any job size. Ele está disponível em várias regiões do Azure.It is available across multiple Azure regions. A imagem abaixo ilustra os principais recursos do Azure Stream Analytics:The following image illustrates the key capabilities of Azure Stream Analytics:

Principais recursos do Stream Analytics

Facilidade de uso do guia de introduçãoEase of getting started

É fácil começar a usar o Azure Stream Analytics.Azure Stream Analytics is easy to start. Bastam alguns cliques para se conectar a várias fontes e coletores, assim criando um pipeline de ponta a ponta.It only takes a few clicks to connect to multiple sources and sinks, creating an end-to-end pipeline. O Stream Analytics pode se conectar a Hubs de Eventos do Azure e a Hub IoT do Azure para a ingestão de dados de fluxo, e ao Armazenamento de Blobs do Azure para ingerir dados 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. A entrada de trabalho também pode incluir dados de referência estáticos ou com alteração lenta do Armazenamento de Blobs do Azure ou do Banco de Dados SQL, que você pode unir a dados de streaming para executar operações de pesquisa.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.

O Stream Analytics pode rotear a saída de trabalho para vários sistemas de armazenamento, como o Armazenamento de Blob do Azure, o Banco de Dados SQL do Azure, o Azure Data Lake Storage ou o Azure CosmosDB.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. Você pode executar a análise em lotes em saídas armazenadas com o Azure HDInsight ou enviar a saída para outro serviço, como os Hubs de Eventos para consumo ou para o Power BI para visualização em tempo real.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 acessar toda a lista de saídas do Stream Analytics, confira Compreender as saídas do Azure Stream Analytics.For the entire list of Stream Analytics outputs, see Understand outputs from Azure Stream Analytics.

Produtividade do programadorProgrammer productivity

O Azure Stream Analytics usa uma linguagem de consulta baseada em SQL simples que foi aumentada com restrições temporais avançadas para analisar os dados em movimento.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 as transformações de trabalho, use uma Linguagem de consulta do Stream Analytics simples e declarativa que permite criar consultas temporais e análises complexas usando constructos SQL simples.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. Como a linguagem de consulta do Stream Analytics é consistente com a linguagem SQL, basta estar familiarizado com a linguagem SQL para começar a criar trabalhos.Because Stream Analytics query language is consistent to the SQL language, familiarity with SQL is sufficient to start creating jobs. Você também pode criar trabalhos usando ferramentas de desenvolvedor, como o Azure PowerShell, as ferramentas do Visual Studio para o Stream Analytics, a extensão do Visual Studio Code no Stream Analytics ou modelos do 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. O uso de ferramentas de desenvolvedor permite a você criar consultas de transformação offline e usar o pipeline CI/CD para enviar trabalhos ao Azure.Using developer tools allow you to develop transformation queries offline and use the CI/CD pipeline to submit jobs to Azure.

A linguagem de consulta do Stream Analytics oferece uma ampla variedade de funções para analisar e processar os dados de streaming.The Stream Analytics query language offers a wide array of functions for analyzing and processing streaming data. Essa linguagem de consulta dá suporte a funções de manipulação de dados e de agregação simples e a funções geoespaciais complexas.This query language supports simple data manipulation, aggregation functions, and complex geospatial functions. Você pode editar consultas no portal e testá-las usando os dados de exemplo que são extraídos do fluxo ativo.You can edit queries in the portal and test them using sample data that is extracted from a live stream.

Você pode estender os recursos da linguagem de consulta definindo e chamando funções adicionais.You can extend the capabilities of the query language by defining and invoking additional functions. Você pode definir as chamadas de função no Serviço do Azure Machine Learning para aproveitar as soluções desta e integrar UDFs (funções definidas pelo usuário) de JavaScript ou C#, ou agregações definidas pelo usuário para executar cálculos complexos como parte de uma consulta do Stream Analytics.You can define function calls in the Azure Machine Learning service 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.

Totalmente gerenciadoFully managed

O Azure Stream Analytics é uma oferta sem servidor (PaaS) totalmente gerenciada no Azure.Azure Stream Analytics is a fully managed serverless (PaaS) offering on Azure. Você não precisa provisionar hardware ou gerenciar clusters para executar seus trabalhos.You don’t have to provision any hardware or manage clusters to run your jobs. O Azure Stream Analytics gerencia seu trabalho integralmente, configurando clusters de computação complexos na nuvem e cuidando do ajuste do desempenho necessário para executar o trabalho.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. A integração com os Hubs de Eventos do Azure e o Hub IoT do Azure permite que seu trabalho ingira milhões de eventos por segundo, provenientes de diversas fontes, incluindo dispositivos conectados, cliques em fluxos e arquivos de log.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. Usando o recurso de partição dos Hubs de Eventos, você pode dividir os cálculos em etapas lógicas, cada um com a capacidade de ser mais particionado para aumentar a escalabilidade.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.

Executar na nuvem ou na borda inteligenteRun in the cloud or on the intelligent edge

O Azure Stream Analytics pode ser executado na nuvem, para uma análise em larga escala, ou no IoT Edge, para análise de latência extremamente baixa.Azure Stream Analytics can run in the cloud, for large-scale analytics, or run on IoT Edge for ultra-low latency analytics. O Azure Stream Analytics usa a mesma linguagem de consulta na nuvem e na borda, permitindo que os desenvolvedores criem arquiteturas realmente híbridas para processamento de fluxo.Azure Stream Analytics uses the same query language on both cloud and the edge, enabling developers to build truly hybrid architectures for stream processing.

Custo total de propriedade baixoLow total cost of ownership

Como um serviço de nuvem, o Stream Analytics é otimizado para que você possa economizar custos.As a cloud service, Stream Analytics is optimized for cost. Não há nenhum custo inicial envolvido, você só paga pelas unidades de streaming que consumir e pela quantidade de dados processados.There are no upfront costs involved - you only pay for the streaming units you consume, and the amount of data processed. Não há nenhum compromisso ou provisionamento de cluster necessário e você pode aumentar ou reduzir verticalmente o trabalho com base em suas necessidades de negócios.There is no commitment or cluster provisioning required, and you can scale the job up or down based on your business needs.

Pronto para necessidades críticasMission-critical ready

O Azure Stream Analytics está disponível em várias regiões em todo o mundo e foi projetado para executar cargas de trabalho críticas, dando suporte a requisitos de confiabilidade, segurança e conformidade.Azure Stream Analytics is available across multiple regions worldwide and is designed to run mission-critical workloads by supporting reliability, security and compliance requirements.

ConfiabilidadeReliability

O Azure Stream Analytics garante o processamento de eventos exatamente uma vez e pelo menos uma entrega de eventos; portanto, os eventos nunca são perdidos.Azure Stream Analytics guarantees exactly-once event processing and at-least-once delivery of events, so events are never lost. O processamento exatamente uma vez é garantido com a saída selecionada, conforme descrito em Garantias de entrega de evento.Exactly-once processing is guaranteed with selected output as described in Event Delivery Guarantees.

O Azure Stream Analytics tem funcionalidades internas de recuperação no caso de falha na entrega de um evento.Azure Stream Analytics has built-in recovery capabilities in case the delivery of an event fails. Além disso, o Stream Analytics fornece também pontos de verificação internos para manter o estado do trabalho e fornece resultados reproduzíveis.Stream Analytics also provides built-in checkpoints to maintain the state of your job and provides repeatable results.

Como um serviço gerenciado, o Stream Analytics garante o processamento de eventos com 99,9% de disponibilidade ao nível de granularidade do minuto.As a managed service, Stream Analytics guarantees event processing with a 99.9% availability at a minute level of granularity. Para saber mais, confira a página do SLA do Stream Analytics.For more information, see the Stream Analytics SLA page.

SegurançaSecurity

Em termos de segurança, o Azure Stream Analytics criptografa todas as comunicações de entrada e de saída e dá suporte ao TLS 1.2.In terms of security, Azure Stream Analytics encrypts all incoming and outgoing communications and supports TLS 1.2. Os pontos de verificação internos também são criptografados.Built-in checkpoints are also encrypted. O Stream Analytics não armazena os dados de entrada, pois todo o processamento é feito na memória.Stream Analytics doesn't store the incoming data since all processing is done in-memory.

ConformidadeCompliance

O Azure Stream Analytics segue várias certificações de conformidade, conforme descrito na Visão geral de conformidade do Azure.Azure Stream Analytics follows multiple compliance certifications as described in the overview of Azure compliance.

DesempenhoPerformance

O Stream Analytics pode processar milhões de eventos por segundo e fornecer resultados com latência ultrabaixa.Stream Analytics can process millions of events every second and it can deliver results with ultra low latencies. Ele permite que você escale verticalmente e expanda para lidar com aplicativos grandes de processamento de eventos complexos e em tempo real.It allows you to scale-up and scale-out to handle large real-time and complex event processing applications. O Stream Analytics é compatível com um desempenho mais alto por meio do particionamento, permitindo que consultas complexas sejam colocadas em paralelo e executadas em vários nós de streaming.Stream Analytics supports higher performance by partitioning, allowing complex queries to be parallelized and executed on multiple streaming nodes. O Azure Stream Analytics é criado no Trill, um mecanismo de análise de streaming na memória de alto desempenho desenvolvido em colaboração com a Microsoft Research.Azure Stream Analytics is built on Trill, a high-performance in-memory streaming analytics engine developed in collaboration with Microsoft Research.

Próximas etapasNext steps

Agora você tem uma visão geral do Azure Stream Analytics.You now have an overview of Azure Stream Analytics. Em seguida, você pode se aprofundar e criar seu primeiro trabalho do Stream Analytics:Next, you can dive deep and create your first Stream Analytics job: