Intelligente apps met Azure Database for PostgreSQL

Azure App Service
Azure AI services
Azure Database for PostgreSQL
Azure Machine Learning
Power BI

Oplossingsideeën

Dit artikel is een oplossingsidee. Als u wilt dat we de inhoud uitbreiden met meer informatie, zoals mogelijke use cases, alternatieve services, implementatieoverwegingen of prijsrichtlijnen, laat het ons dan weten door GitHub-feedback te geven.

Dit artikel bevat een oplossing voor het automatiseren van gegevensanalyse en visualisatie met behulp van kunstmatige intelligentie (AI). Kernonderdelen in de oplossing zijn Azure Functions, Azure Cognitive Services en Azure Database for PostgreSQL.

Architectuur

Diagram that shows the dataflow of an intelligent application using Azure Database for PostgreSQL.

Een Visio-bestand van deze architectuur downloaden.

Gegevensstroom

  1. Met een Azure Function-activiteit kunt u een Azure Functions-app activeren in de Azure Data Factory-pijplijn. U maakt een gekoppelde serviceverbinding en gebruikt de gekoppelde service met een activiteit om de Azure-functie op te geven die u wilt uitvoeren.
  2. Gegevens zijn afkomstig uit meerdere bronnen, waaronder Azure Storage en Azure Event Hubs voor gegevens met een groot volume. Wanneer de pijplijn nieuwe gegevens ontvangt, wordt de Azure Functions-app geactiveerd.
  3. De Azure Functions-app roept de Cognitive Services-API aan om de gegevens te analyseren.
  4. De Cognitive Services-API retourneert de resultaten van de analyse in JSON-indeling naar de Azure Functions-app.
  5. De Azure Functions-app slaat de gegevens en resultaten van de Cognitive Services-API op in Azure Database for PostgreSQL.
  6. Azure Machine Learning maakt gebruik van aangepaste machine learning-algoritmen om meer inzicht te krijgen in de gegevens.
    • Als u de machine learning-stap nadert met een perspectief zonder code, kunt u verdere bewerkingen voor tekstanalyse implementeren op de gegevens, zoals functie-hashing, Word2Vector en n-gram-extractie.
    • Als u de voorkeur geeft aan een code-first benadering, kunt u een opensource NLP-model (Natural Language Processing) uitvoeren als experiment in Machine Learning Studio.
  7. De PostgreSQL-connector voor Power BI maakt het mogelijk om door mensen geïnterpreteerde inzichten in Power BI of een aangepaste webtoepassing te verkennen.

Onderdelen

  • Azure-app Service biedt een volledig beheerd platform voor het snel bouwen, implementeren en schalen van web-apps en API's.
  • Functions is een serverloos rekenplatform op basis van gebeurtenissen. Zie Azure Function-activiteit in Azure Data Factory voor informatie over het gebruik van een activiteit om een functie uit te voeren als onderdeel van een Data Factory-pijplijn.
  • Event Hubs is een volledig beheerd streamingplatform voor big data.
  • Cognitive Services biedt een reeks AI-services en API's die u kunt gebruiken om cognitieve intelligentie in apps te bouwen.
  • Azure Database for PostgreSQL is een volledig beheerde relationele databaseservice. Het biedt hoge beschikbaarheid, elastisch schalen, patchen en andere beheermogelijkheden voor PostgreSQL.
  • Azure Machine Learning is een cloudservice die u kunt gebruiken om machine learning-modellen te trainen, implementeren en automatiseren. De studio ondersteunt code-first- en no-code-benaderingen.
  • Power BI is een verzameling softwareservices en apps die analysegegevens weergeven en u helpen bij het afleiden van inzichten uit gegevens.

Scenariodetails

De geautomatiseerde pijplijn maakt gebruik van de volgende services om de gegevens te analyseren:

  • Cognitive Services maakt gebruik van AI voor het beantwoorden van vragen, sentimentanalyse en tekstomzetting.
  • Azure Machine Learning biedt machine learning-hulpprogramma's voor predictive analytics.

Voor het opslaan van gegevens en resultaten gebruikt de oplossing Azure Database for PostgreSQL. De PostgreSQL-database ondersteunt ongestructureerde gegevens, parallelle query's en declaratieve partitionering. Deze ondersteuning maakt Azure Database for PostgreSQL een effectieve keuze voor zeer gegevensintensieve AI- en machine learning-taken.

De oplossing automatiseert de levering van de gegevensanalyse. Een connector koppelt Azure Database for MySQL aan visualisatiehulpprogramma's zoals Power BI.

De architectuur maakt gebruik van een Azure Functions-app voor het opnemen van gegevens uit meerdere gegevensbronnen. Het is een serverloze oplossing die de volgende voordelen biedt:

  • Infrastructuuronderhoud: Azure Functions is een beheerde service waarmee ontwikkelaars zich kunnen richten op innovatief werk dat waarde levert aan het bedrijf.
  • Schaalbaarheid: Azure Functions biedt rekenresources op aanvraag, zodat functie-exemplaren naar behoefte worden geschaald. Naarmate aanvragen vallen, worden resources en toepassingsexemplaren automatisch verwijderd.

Potentiële gebruikscases

Azure Database for PostgreSQL is een cloudoplossing. Als gevolg hiervan wordt deze oplossing niet aanbevolen voor mobiele toepassingen. Het is geschikter voor downstreamanalyse in de volgende branches en andere:

  • Transport: Onderhoudsvoorspelling
  • Financiën: Risicoanalyse en fraudedetectie
  • E-commerce: voorspellings- en aanbevelingsengines voor klantverloop
  • Telecommunicatie: Prestatieoptimalisatie
  • Hulpprogramma's: preventie van storingen

Overwegingen

Met deze overwegingen worden de pijlers van het Azure Well-Architected Framework geïmplementeerd. Dit is een set richtlijnen die kunnen worden gebruikt om de kwaliteit van een workload te verbeteren. Zie Microsoft Azure Well-Architected Framework voor meer informatie.

  • Voor de meeste functies heeft de Cognitive Service for Language-API een maximale grootte van 5120 tekens voor één document. Voor alle functies is de maximale aanvraaggrootte 1 MB. Zie Servicelimieten voor Azure Cognitive Service for Language voor meer informatie over gegevens- en frequentielimieten.

  • In Azure Database for PostgreSQL bepaalt uw ingangsvolume en -snelheid uw selectie van de service- en implementatiemodus. Er zijn twee services beschikbaar:

    • Azure Database for PostgreSQL
    • Azure Cosmos DB for PostgreSQL, voorheen hyperscale (Citus)-modus

    Gebruik Azure Cosmos DB voor PostgreSQL als u grote workloads van mening en beoordelingen van klanten gebruikt. Binnen Azure Database for PostgreSQL zijn twee modi beschikbaar: één server en flexibele server. Als u wilt weten wanneer u elke implementatiemodus gebruikt, raadpleegt u Wat is Azure Database for PostgreSQL?

  • In eerdere versies van deze oplossing is de Cognitive Services Text Analytics-API gebruikt. Azure Cognitive Service for Language bevat nu drie afzonderlijke taalservices in Cognitive Services: Text Analytics, QnA Maker en Language Understanding (LUIS). U kunt eenvoudig migreren van de Text Analytics-API naar de Cognitive Service for Language-API. Zie Migreren naar de nieuwste versie van Azure Cognitive Service for Language voor instructies.

Beveiliging

Beveiliging biedt garanties tegen opzettelijke aanvallen en misbruik van uw waardevolle gegevens en systemen. Zie Overzicht van de beveiligingspijler voor meer informatie.

Alle gegevens in Azure Database for PostgreSQL worden automatisch versleuteld en er wordt een back-up van gemaakt. U kunt Microsoft Defender voor Cloud configureren voor verdere risicobeperking van bedreigingen. Zie Microsoft Defender inschakelen voor opensource-relationele databases en reageren op waarschuwingen voor meer informatie.

DevOps

U kunt GitHub Actions configureren om verbinding te maken met een Azure Database for PostgreSQL-database met behulp van de verbindingsreeks en het instellen van een werkstroom. Zie de quickstart: GitHub Actions gebruiken om verbinding te maken met Azure PostgreSQL voor meer informatie.

U kunt uw machine learning-levenscyclus ook automatiseren met behulp van Azure Pipelines. Zie de GitHub-opslagplaats MLOps met Azure MLOps voor informatie over het implementeren van een MLOps-werkstroom en het bouwen van een CI/CD-pijplijn voor uw project.

Kostenoptimalisatie

Kostenoptimalisatie gaat over manieren om onnodige uitgaven te verminderen en operationele efficiëntie te verbeteren. Zie Overzicht van de pijler kostenoptimalisatie voor meer informatie.

Cognitive Service for Language biedt verschillende prijscategorieën. Het aantal tekstrecords dat u verwerkt, is van invloed op uw kosten. Zie Cognitive Service for Language-prijzen voor meer informatie.

Volgende stappen