Applications intelligentes utilisant Azure Database pour PostgreSQL

App Service
Cognitive Services
Database pour PostgreSQL
Machine Learning
Power BI

Idées de solution

Cet article présente une idée de solution. Si vous souhaitez que nous développions le contenu avec d’autres informations, telles que des cas d’usage potentiels, d’autres services, des considérations d’implémentation ou un guide des prix, adressez-nous vos commentaires GitHub.

Cet article présente une solution pour automatiser l’analyse et la visualisation des données à l’aide de l’intelligence artificielle (IA). Les composants principaux de la solution sont Azure Functions, Azure Cognitive Services et Azure Database pour PostgreSQL.

Architecture

Diagramme de l’architectureTélécharger un fichier PNG de cette architecture.

Dataflow

  1. Une activité Azure Function vous permet de déclencher une application Azure Functions dans le pipeline Azure Data Factory. Vous créez une connexion de service lié et utilisez le service lié avec une activité pour spécifier la Azure Function que vous souhaitez exécuter.
  2. Les données proviennent de plusieurs sources, notamment Stockage Azure et Azure Event Hubs pour les données volumineuses. Lorsque le pipeline reçoit de nouvelles données, il déclenche l’application Azure Functions.
  3. L’application Azure Functions appelle l’API Cognitive Services pour analyser les données.
  4. L’API Cognitive Services retourne les résultats de l’analyse au format JSON à l’application Azure Functions.
  5. L'application de fonction Azure stocke les données et les résultats de l'API Cognitive Services dans Azure Database pour PostgreSQL.
  6. Azure Machine Learning utilise des algorithmes de Machine Learning personnalisés pour fournir des insights supplémentaires sur les données.
    • Si vous abordez l’étape de l’apprentissage automatique dans une perspective sans code, vous pouvez mettre en œuvre d’autres opérations d’analyse de texte sur les données, comme le hachage de caractéristiques, le Word2Vector et l’extraction de n-grammes.
    • Si vous préférez une approche axée sur le code, vous pouvez exécuter un modèle open source de traitement en langage naturel (NLP) en tant qu’expérience dans Machine Learning Studio.
  7. Le connecteur PostgreSQL pour Power BI permet d’explorer des insights interprétables par l’homme dans Power BI ou une application web personnalisée.

Composants

Détails du scénario

Le pipeline automatisé utilise les services suivants pour analyser les données :

  • Cognitive Services utilise l’IA pour les réponses aux questions, l’analyse des sentiments et la traduction de texte.
  • Azure Machine Learning fournit des outils d’apprentissage automatique pour l’analytique prédictive.

Pour stocker les données et les résultats, la solution utilise Azure Database pour PostgreSQL. La base de données PostgreSQL prend en charge les données non structurées, les requêtes parallèles et le partitionnement déclaratif. Cette prise en charge fait de Azure Database pour PostgreSQL un choix efficace pour les tâches d’IA et de Machine Learning à forte intensité de données.

La solution automatise la livraison de l’analyse des données. Un connecteur lie Azure Database pour MySQL à des outils de visualisation tels que Power BI.

L’architecture utilise une application Azure Functions pour ingérer des données provenant de plusieurs sources de données. Il s’agit d’une solution serverless qui offre les avantages suivants :

  • Maintenance de l’infrastructure : Azure Functions est un service managé qui permet aux développeurs de se concentrer sur un travail innovant qui apporte de la valeur à l’entreprise.
  • Scalabilité : Azure Functions fournit des ressources de calcul à la demande, afin que les instances de fonction soient mises à l’échelle en fonction des besoins. Quand les demandes diminuent, les ressources et les instances d’application baissent automatiquement.

Cas d’usage potentiels

Azure Database pour PostgreSQL est une solution cloud. Par conséquent, cette solution n’est pas recommandée pour les applications mobiles. Il est plus approprié pour l’analyse en aval dans les secteurs suivants et d’autres :

  • Transport : Prédiction de maintenance
  • Finances : Évaluation des risques et détection des fraudes
  • E-commerce : moteurs de prédiction et de recommandation de l’attrition des clients
  • Télécommunications : optimisation des performances
  • Utilitaires : Prévention des pannes

Considérations

Ces considérations implémentent les piliers d’Azure Well-Architected Framework qui est un ensemble de principes directeurs qui permettent d’améliorer la qualité d’une charge de travail. Pour plus d’informations, consultez Microsoft Azure Well-Architected Framework.

  • Pour la plupart des fonctionnalités, l’API Cognitive Service for Language a une taille maximale de 5120 caractères pour un seul document. Pour toutes les fonctionnalités, la taille de requête maximale est de 1 Mo. Pour plus d’informations sur les limites de données et de débit, consultez Limites de service pour Azure Cognitive Service for Language.

  • Dans Azure Database pour PostgreSQL, votre volume d’entrée et votre vélocité déterminent votre sélection du mode de service et de déploiement. Deux services sont disponibles :

    • Azure Database pour PostgreSQL
    • Azure Cosmos DB for PostgreSQL, anciennement appelé mode Hyperscale (Citus)

    Si vous minez de grandes charges de travail d’avis et d’avis des clients, utilisez Azure Cosmos DB for PostgreSQL. Dans Azure Database pour PostgreSQL, deux modes sont disponibles : serveur unique et serveur flexible. Pour comprendre quand utiliser chaque mode de déploiement, consultez Qu’est-ce que Azure Database pour PostgreSQL ?.

  • Les versions précédentes de cette solution utilisaient l’API Analyse de texte Cognitive Services. Azure Cognitive Service for Language unifie désormais trois services linguistiques individuels de Cognitive Services : Analyse de texte, QnA Maker et Language Understanding (LUIS). Vous pouvez facilement migrer de l’API Analyse de texte vers l’API Cognitive Service for Language. Pour les instructions, voir Migrer vers la dernière version d’Azure Cognitive Service for Language.

Sécurité

La sécurité fournit des garanties contre les attaques délibérées, et contre l’utilisation abusive de vos données et systèmes importants. Pour plus d’informations, consultez Vue d’ensemble du pilier Sécurité.

Toutes les données de Azure Database pour PostgreSQL sont automatiquement chiffrées et sauvegardées. Vous pouvez configurer Microsoft Defender pour le cloud afin d’atténuer davantage les menaces. Pour plus d’informations, consultez Activer Microsoft Defender pour les bases de données relationnelles open source et répondre aux alertes.

DevOps

Vous pouvez configurer GitHub Actions pour une connexion à la base de données Azure Database pour PostgreSQL à l'aide de sa chaîne de connexion et en configurant un flux de travail. Pour en savoir plus, consultez Démarrage rapide : Utiliser GitHub Actions pour la connexion à Azure PostgreSQL.

Vous pouvez également automatiser votre cycle de vie machine learning à l’aide d’Azure Pipelines. Pour plus d’informations sur l’implémentation d’un workflow MLOps et la création d’un pipeline CI/CD pour votre projet, consultez le référentiel GitHub MLOps avec Azure ML.

Optimisation des coûts

L’optimisation des coûts consiste à examiner les moyens de réduire les dépenses inutiles et d’améliorer l’efficacité opérationnelle. Pour plus d’informations, consultez Vue d’ensemble du pilier d’optimisation des coûts.

Cognitive Service for Language offre différents niveaux tarifaires. Le nombre d’enregistrements texte que vous traitez affecte votre coût. Pour plus d’informations, consultez Tarification de Cognitive Service for Language.

Étapes suivantes