Ideas de solución
En este artículo se describe una idea de solución. El arquitecto de la nube puede usar esta guía para ayudar a visualizar los componentes principales de una implementación típica de esta arquitectura. Use este artículo como punto de partida para diseñar una solución bien diseñada que se adapte a los requisitos específicos de la carga de trabajo.
En este artículo se presenta una solución para automatizar el análisis y la visualización de datos mediante inteligencia artificial (IA). Los componentes principales de la solución son Azure Functions, los servicios de Azure AI y Azure Database for PostgreSQL.
Arquitectura
Descargue un archivo Visio de esta arquitectura.
Flujo de datos
- Una actividad de función de Azure permite desencadenar una aplicación de Azure Functions en la canalización de Azure Data Factory. Cree una conexión de servicio vinculado y use el servicio vinculado con una actividad para especificar la función de Azure que desea ejecutar.
- Los datos proceden de varios orígenes, como Azure Storage y Azure Event Hubs para datos de gran volumen. Cuando la canalización recibe nuevos datos, desencadena la aplicación de Azure Functions.
- La aplicación de Azure Functions llama a la API de servicios de Azure AI para analizar los datos.
- La API de servicios de Azure AI devuelve los resultados del análisis en formato JSON a la aplicación de Azure Functions.
- La aplicación de Azure Functions almacena los datos y los resultados de la API de servicios de Azure AI en Azure Database for PostgreSQL.
- Azure Machine Learning usa algoritmos de aprendizaje automático personalizados para proporcionar más conclusiones sobre los datos.
- Si está encarando el paso de aprendizaje automático con una perspectiva sin código, puede implementar operaciones adicionales de análisis de texto en los datos, como el hash de características, Word2Vector y la extracción de n-gramas.
- Si prefiere un enfoque de código primero, puede ejecutar un modelo de procesamiento de lenguaje natural (NLP) de código abierto como un experimento en el estudio de Machine Learning.
- El conector de PostgreSQL para Power BI permite explorar información interpretable por el usuario en Power BI o una aplicación web personalizada.
Componentes
- Azure App Service proporciona una plataforma totalmente administrada para compilar, implementar y escalar rápidamente aplicaciones web y API.
- Functions es una plataforma de proceso sin servidor basada en eventos. Para obtener información sobre cómo usar una actividad para ejecutar una función como parte de una canalización de Data Factory, consulte Actividad de las funciones de Azure en Azure Data Factory.
- Event Hubs es una plataforma de streaming de macrodatos totalmente administrada.
- Cognitive Services proporciona un conjunto de servicios y API de inteligencia artificial que puede usar para crear inteligencia cognitiva en aplicaciones.
- Azure Database for PostgreSQL es un servicio de base de datos relacional totalmente administrado. Proporciona alta disponibilidad, escalado elástico, aplicación de revisiones y otras funcionalidades de administración para PostgreSQL.
- Azure Machine Learning es un servicio en la nube que puede usar para entrenar, implementar y automatizar modelos de aprendizaje automático. El estudio admite enfoques de código primero y sin código.
- Power BI es una colección de servicios de software y aplicaciones que muestran información de análisis y le ayudan a obtener información de los datos.
Detalles del escenario
La canalización automatizada usa los siguientes servicios para analizar los datos:
- Los servicios de Azure AI usan IA para la respuesta a preguntas, el análisis de sentimiento y la traducción de texto.
- Azure Machine Learning proporciona herramientas de aprendizaje automático para el análisis predictivo.
Para almacenar datos y resultados, la solución usa Azure Database for PostgreSQL. La base de datos PostgreSQL admite datos no estructurados, consultas paralelas y particiones declarativas. Esta compatibilidad hace que Azure Database for PostgreSQL sea una opción eficaz para tareas de inteligencia artificial y aprendizaje automático con un uso intensivo de datos.
La solución automatiza la entrega del análisis de datos. Un conector vincula Azure Database for MySQL con herramientas de visualización como Power BI.
La arquitectura usa una aplicación de Azure Functions para ingerir datos de varios orígenes de datos. Es una solución sin servidor que ofrece las siguientes ventajas:
- Mantenimiento de la infraestructura: Azure Functions es un servicio administrado que permite a los desarrolladores centrarse en un trabajo innovador que ofrece valor a la empresa.
- Escalabilidad: Azure Functions proporciona recursos de proceso a petición, por lo que las instancias de función se escalan según sea necesario. A medida que disminuyan las solicitudes, todos los recursos e instancias de la aplicación se descartarán automáticamente.
Posibles casos de uso
Azure Database for PostgreSQL es una solución basada en la nube. Como resultado, esta solución no se recomienda para aplicaciones móviles. Es más adecuada para el análisis de nivel inferior en los siguientes sectores y otros:
- Transporte: predicción de mantenimiento
- Finanzas: evaluación de riesgos y detección de fraudes
- Comercio electrónico: predicción de abandono de clientes y motores de recomendación
- Telecomunicaciones: optimización del rendimiento
- Servicios públicos: prevención de interrupciones
Consideraciones
Estas consideraciones implementan los pilares del marco de buena arquitectura de Azure, que es un conjunto de principios guía que se pueden usar para mejorar la calidad de una carga de trabajo. Para más información, consulte Marco de buena arquitectura de Microsoft Azure.
Para la mayoría de las características, La API de lenguaje de Azure AI tiene un tamaño máximo de 5120 caracteres para un único documento. Para todas las características, el tamaño máximo de la solicitud es de 1 MB. Para obtener más información sobre los límites de datos y velocidad, consulte Límites de servicio para Azure Cognitive Service para lenguaje.
En Azure Database for PostgreSQL, el volumen de entrada y la velocidad determinan la selección del servicio y el modo de implementación. Hay dos servicios disponibles:
- Azure Database for PostgreSQL
- Azure Cosmos DB for PostgreSQL, que anteriormente se conocía como modo Hiperescala (Citus)
Si examina grandes cargas de trabajo de opiniones y reseñas de clientes, use Azure Cosmos DB for PostgreSQL. En Azure Database for PostgreSQL, hay dos modos disponibles: servidor único y servidor flexible. Para comprender cuándo usar cada modo de implementación, consulte ¿Qué es Azure Database for PostgreSQL?.
Las versiones anteriores de esta solución usaron Text Analytics API de servicios de Azure AI. El lenguaje azure AI ahora unifica tres servicios de idioma individuales en los servicios de Azure AI: Text Analytics, QnA Maker y Language Understanding (LUIS). Puede migrar fácilmente desde Text Analytics API a La API de lenguaje de Azure AI. Para obtener las instrucciones, consulte Migración a la versión más reciente de Azure Cognitive Service para lenguaje.
Seguridad
La seguridad proporciona garantías contra ataques deliberados y el abuso de datos y sistemas valiosos. Para más información, consulte Introducción al pilar de seguridad.
De manera automática, todos los datos de Azure Database for PostgreSQL se cifran y se crean copias de seguridad de estos. Puede configurar Microsoft Defender for Cloud para mitigar aún más las amenazas. Para obtener más información, consulte Habilitación de Microsoft Defender para bases de datos relacionales de código abierto y respuesta a alertas.
DevOps
Puede configurar Acciones de GitHub para conectarse a la base de datos de Azure Database for PostgreSQL con su cadena de conexión y configurando un flujo de trabajo. Para obtener más información, consulte Inicio rápido: Uso de Acciones de GitHub para conectarse a Azure PostgreSQL.
También puede automatizar el ciclo de vida del aprendizaje automático mediante Azure Pipelines. Para obtener información sobre cómo implementar un flujo de trabajo de MLOps y crear una canalización de CI/CD para el proyecto, consulte el repositorio de GitHub MLOps con Azure ML.
Optimización de costos
La optimización de costos trata de buscar formas de reducir los gastos innecesarios y mejorar las eficiencias operativas. Para más información, vea Información general del pilar de optimización de costos.
Azure AI Language ofrece varios planes de tarifa. El número de registros de texto que procesa afecta al costo. Para obtener más información, consulte Precios de Cognitive Service para lenguaje.
Pasos siguientes
- Información general sobre Azure Functions
- Actividad de las funciones de Azure en Azure Data Factory
- Azure Event Hubs: una plataforma de streaming de macrodatos y un servicio de ingesta de eventos
- ¿Qué es Azure Cognitive Services?
- ¿Qué es Azure Cognitive Service for Language?
- Procedimiento para usar características del servicio de lenguaje de forma asincrónica
- Consola de prueba de la API de Azure Cognitive Services para lenguaje
- Uso de DirectQuery para vincular PostgreSQL y Power BI
- Creación de un clúster de Azure Cosmos DB for PostgreSQL en Azure Portal
- Tutorial: Consumo de modelos de Azure Machine Learning en Power BI
- Extracción de información del texto con el servicio Language
- Microsoft Certified: Azure AI Engineer Associate