Elección de la tecnología de análisis en tiempo real y procesamiento de flujos en Azure

Hay varios servicios disponibles para el análisis en tiempo real y procesamiento de flujos en Azure. Este artículo le proporciona la información que necesita para decidir qué tecnología se ajusta mejor a su aplicación.

Cuándo usar Azure Stream Analytics

Azure Stream Analytics es el servicio recomendado para el análisis de flujos en Azure. Puede usar esto para una amplia gama de escenarios que incluyen, entre otros, los siguientes:

Agregar un trabajo de Azure Stream Analytics a la aplicación es la manera más rápida de obtener análisis de flujos en funcionamiento en Azure mediante el lenguaje SQL que ya conoce. Azure Stream Analytics es un servicio de trabajo, por lo que no tiene que perder el tiempo administrando clústeres, ni preocuparse por el tiempo de inactividad, con un 99,9 % del Acuerdo de Nivel de Servicio (SLA) a nivel de trabajo. La facturación también se realiza en el nivel de trabajo, lo que hace que los costos iniciales sean bajos (una unidad de streaming), pero escalables (hasta 396 unidades de streaming). Es mucho más rentable ejecutar algunos trabajos de Stream Analytics que ejecutar y mantener un clúster.

Azure Stream Analytics ofrece una experiencia muy completa de fábrica. Puede aprovechar inmediatamente las siguientes características sin ninguna configuración adicional:

  • Operadores temporales integrados, como agregados en ventanas, combinaciones temporales y funciones analíticas temporales.
  • Adaptadores de entrada y salida nativos de Azure
  • Compatibilidad con datos de referencia de variación lenta (también conocidos como tablas de búsqueda), incluida la unión con datos de referencia geoespaciales de geovalla.
  • Soluciones integradas, como la detección de anomalías
  • Varias ventanas de tiempo en la misma consulta
  • Capacidad de crear varios operadores temporales en secuencias arbitrarias.
  • Latencia de un extremo a otro por debajo de 100 ms de la entrada que llega a Event Hubs, incluido el retraso de red desde y hacia Event Hubs, con alto rendimiento sostenido

Cuándo usar otras tecnologías

Quiere escribir UDF, UDA y deserializadores personalizados en un lenguaje distinto de JavaScript o C#

Azure Stream Analytics admite funciones definidas por el usuario (UDF) o agregados definidos por el usuario (UDA) en JavaScript para los trabajos en la nube y C# para trabajos de IoT Edge. También se admiten los deserializadores definidos por el usuario de C#. Si quiere implementar un deserializador, una UDF o un UDA en otros lenguajes, como Java o Python, puede usar Spark Structured Streaming. También puede ejecutar el EventProcessorHost de Event Hubs en sus propias máquinas virtuales para realizar un procesamiento de flujos arbitrario.

La solución está en un entorno de varias nubes o local.

Azure Stream Analytics es la tecnología propietaria de Microsoft y solo está disponible en Azure. Si necesita que la solución sea portable entre nubes o de forma local, considere la posibilidad de tecnologías de código abierto como Apache Flink o Spark Structured Streaming.

Pasos siguientes