Ideas de solución
Este artículo es una idea de solución. Si te gustaría que ampliemos este artículo con más información, como posibles casos de uso, servicios alternativos, consideraciones de implementación o una guía de precios, comunícalo a través de los Comentarios de GitHub.
En este artículo se presenta una solución para usar Azure Kubernetes Service (AKS) para procesar y analizar rápidamente un gran volumen de datos de streaming de dispositivos.
Apache®, Apache Kafka y Apache Spark son marcas registradas o marcas comerciales de Apache Software Foundation en los Estados Unidos u otros países. El uso de estas marcas no implica la aprobación de Apache Software Foundation.
Architecture
Descargue un archivo Visio de esta arquitectura.
Flujo de datos
- Los sensores generan datos y los transmiten a Azure API Management.
- El clúster de AKS ejecuta microservicios que se implementan como contenedores detrás de una malla de servicio. Los contenedores se crean mediante un proceso de DevOps y se almacenan en Azure Container Registry.
- Un servicio de ingesta almacena los datos en Azure Cosmos DB.
- Un servicio de análisis recibe de forma asincrónica los datos y los transmite a Apache Kafka y a Azure HDInsight.
- Los científicos de datos usan modelos de Machine Learning y la plataforma Splunk para analizar los datos.
- Un servicio de procesamiento procesa los datos y almacena el resultado en Azure Database for PostgreSQL. El servicio también copia en caché los datos en Azure Cache for Redis.
- Una aplicación web que se ejecuta en Azure App Service crea visualizaciones de los resultados.
Componentes
La solución usa las siguientes tecnologías claves:
- API Management
- App Service
- Azure Cache for Redis
- Container Registry
- Azure Cosmos DB
- Azure Database para PostgreSQL
- HDInsight
- AKS
- Azure Pipelines
Detalles del escenario
Esta solución es una buena opción para un escenario que implica millones de puntos de datos, donde los orígenes de los datos incluyen dispositivos de Internet de las cosas (IoT), sensores y vehículos. En esta situación, el procesamiento del gran volumen de datos es un desafío. El análisis rápido de los datos es otra tarea exigente porque las organizaciones buscan obtener información sobre escenarios complejos.
Los microservicios en contenedores de AKS son una parte clave de la solución. Estos servicios independientes ingieren y procesan el flujo de datos en tiempo real. También se escalan según sea necesario. La portabilidad de los contenedores permite que los servicios se ejecuten en diferentes entornos y procesen datos de varios orígenes. Para desarrollar e implementar los microservicios, se usan DevOps y la integración continua/entrega continua (CI/CD). Estos enfoques acortan el ciclo de desarrollo.
Para almacenar los datos ingeridos, la solución usa Azure Cosmos DB. Esta base de datos escala elásticamente el rendimiento y el almacenamiento, lo que la convierte en una buena opción para grandes volúmenes de datos.
La solución también usa Kafka. Esta plataforma de streaming de baja latencia controla las fuentes de distribución de datos en tiempo real a velocidades extremadamente altas.
Otro componente clave de la solución es HDInsight, que es un servicio de análisis en la nube administrado de código abierto. HDInsight simplifica la ejecución de marcos de macrodatos a gran escala y velocidad al usar Apache Spark en Azure. Splunk ayuda en el proceso de análisis de datos. Esta plataforma crea visualizaciones a partir de datos en tiempo real y facilita inteligencia empresarial.
Posibles casos de uso
Esta solución beneficia a las siguientes áreas:
- Seguridad del vehículo, especialmente en la industria automotriz
- Servicio al cliente en el comercio minorista y otros sectores
- Soluciones en la nube para atención sanitaria
- Soluciones tecnológicas financieras en el sector financiero
Pasos siguientes
Documentación del producto:
- Acerca de Azure Cache for Redis
- ¿Qué es la Azure API Management?
- Información general de App Service
- Azure Kubernetes Service
- Introducción a los registros de contenedores privados de Docker en Azure
- Bienvenido a Azure Cosmos DB
- ¿Qué es Azure Database for PostgreSQL?
- ¿Qué es Azure HDInsight?
- ¿Qué es Azure Pipelines?
Módulos de formación de Microsoft:
- Creación y almacenamiento de imágenes de contenedor con Azure Container Registry
- Configuración de planes de Azure App Service
- Trabajo con Azure Cosmos DB
- Creación de una instancia de Azure Database for PostgreSQL y conexión a ella
- Desarrollo para Azure Cache for Redis
- Exploración de API Management
- Administración de infraestructura como código mediante Azure y DSC
- Introducción a Azure HDInsight