Intelligente Apps mit Azure Database for PostgreSQL

App Service
Cognitive Services
Database for PostgreSQL
Machine Learning
Power BI

Lösungsmöglichkeiten

Dieser Artikel ist ein Lösungsvorschlag. Wenn Sie möchten, dass wir diesen Artikel um weitere Informationen ergänzen, z. B. potenzielle Anwendungsfälle, alternative Dienste, Überlegungen zur Implementierung oder Preisempfehlungen, lassen Sie es uns über Feedback auf GitHub wissen.

In diesem Artikel wird eine Lösung für die Automatisierung der Datenanalyse und Visualisierung mithilfe von künstlicher Intelligenz (KI) vorgestellt. Kernkomponenten in der Lösung sind Azure Functions, Azure Cognitive Services und Azure Database for PostgreSQL.

Architektur

ArchitekturdiagrammLaden Sie eine PNG-Datei für diese Architektur herunter.

Datenfluss

  1. Mit einer Azure Function-Aktivität können Sie eine Azure Functions-App in der Azure Data Factory-Pipeline auslösen. Sie erstellen eine verknüpfte Dienstverbindung und verwenden den verknüpften Dienst mit einer Aktivität, um die auszuführende Azure-Funktion anzugeben.
  2. Die Daten stammen aus mehreren Quellen, einschließlich Azure Storage und Azure Event Hubs für Daten mit hohem Volumen. Wenn die Pipeline neue Daten empfängt, wird die Azure Functions-App ausgelöst.
  3. Die Azure Functions-App ruft die Cognitive Services-API auf, um die Daten zu analysieren.
  4. Die Cognitive Services-API gibt die Ergebnisse der Analyse im JSON-Format an die Azure Functions-App zurück.
  5. Die Azure Functions-App speichert die Daten und Ergebnisse von der Cognitive Services-API in Azure Database for PostgreSQL.
  6. Azure Machine Learning verwendet benutzerdefinierte Machine Learning-Algorithmen, um weitere Einblicke in die Daten zu liefern.
    • Wenn Sie für den Schritt mit dem maschinellen Lernen in einen No-Code-Ansatz bevorzugen, können Sie weitere Textanalysevorgänge für die Daten ausführen, wie Featurehashing, Word2Vector und eine N-Gramm-Extraktion.
    • Wenn Sie einen Code-First-Ansatz bevorzugen, können Sie ein Open-Source-Modell für die Verarbeitung natürlicher Sprache (Natural Language Processing, NLP) als Experiment in Machine Learning Studio ausführen.
  7. Der PostgreSQL-Connector für Power BI ermöglicht es, die für Menschen interpretierbaren Erkenntnisse in Power BI oder in einer benutzerdefinierten Webanwendung zu untersuchen.

Komponenten

Szenariodetails

Die automatisierte Pipeline verwendet die folgenden Dienste, um die Daten zu analysieren:

  • Cognitive Services verwendet KI für Fragen und Antworten, die Stimmungsanalyse und die Textübersetzung.
  • Azure Machine Learning stellt Machine Learning-Tools für Predictive Analytics bereit.

Zum Speichern von Daten und Ergebnissen verwendet die Lösung Azure Database for PostgreSQL. Die PostgreSQL-Datenbank unterstützt unstrukturierte Daten, parallele Abfragen und die deklarative Partitionierung. Diese Unterstützung macht Azure Database for PostgreSQL zu einer idealen Wahl für sehr datenintensive KI- und Machine Learning-Aufgaben.

Die Lösung automatisiert die Bereitstellung der Datenanalyse. Ein Connector verknüpft Azure Database for MySQL mit Visualisierungstools wie Power BI.

Die Architektur verwendet eine Azure Functions-App, um Daten aus mehreren Datenquellen zu erfassen. Es handelt sich um eine serverlose Lösung, die folgende Vorteile bietet:

  • Infrastrukturwartung: Azure Functions ist ein verwalteter Dienst, mit dem sich Entwickler*innen auf innovative Arbeit konzentrieren können, die dem Unternehmen einen Mehrwert bietet.
  • Skalierbarkeit: Azure Functions stellt Computeressourcen auf Abruf bereit, sodass Funktionsinstanzen nach Bedarf skaliert werden. Wenn die Anzahl von Anforderungen abnimmt, wird die Bereitstellung der Ressourcen und Anwendungsinstanzen automatisch rückgängig gemacht.

Mögliche Anwendungsfälle

Azure Database for PostgreSQL ist eine cloudbasierte Lösung. Daher wird diese Lösung nicht für mobile Anwendungen empfohlen. Sie eignet sich besser für Downstreamanalysen in beispielsweise folgenden Brachen:

  • Transportwesen: Wartungsvorhersage
  • Finanzsektor: Risikobewertung und Betrugserkennung
  • E-Commerce: Vorhersage- und Empfehlungs-Engines für Kundenabwanderung
  • Telekommunikation: Leistungsoptimierung
  • Versorgungsunternehmen: Verhinderung von Ausfällen

Überlegungen

Diese Überlegungen setzen die Säulen des Azure Well-Architected Framework um, das eine Reihe von Leitprinzipien enthält, die zur Verbesserung der Qualität eines Workloads verwendet werden können. Weitere Informationen finden Sie unter Microsoft Azure Well-Architected Framework.

  • Für die meisten Features weist die Cognitive Service for Language-API eine maximale Größe von 5120 Zeichen für ein einzelnes Dokument auf. Für alle Features beträgt die maximale Anforderungsgröße 1 MB. Weitere Informationen zu Daten- und Ratenlimits finden Sie unter Dienstgrenzwerte für Azure Cognitive Service für Language.

  • In Azure Database for PostgreSQL bestimmen das Eingangsvolumen und die Geschwindigkeit Ihre Auswahl des Diensts und des Bereitstellungsmodus. Es stehen zwei Dienste zur Verfügung:

    • Azure Database for PostgreSQL
    • Azure Cosmos DB for PostgreSQL, was früher als Hyperscale-Modus (Citus) bezeichnet wurde

    Wenn Sie große Workloads mit Kundenmeinungen und Bewertungen schürfen, verwenden Sie Azure Cosmos DB for PostgreSQL. Innerhalb von Azure Database for PostgreSQL sind zwei Modi verfügbar: Einzelserver und flexibler Server. Informationen zur Verwendung der einzelnen Bereitstellungsmodi finden Sie unter Was ist Azure Database for PostgreSQL?.

  • In früheren Versionen dieser Lösung wurde die Textanalyse-API von Cognitive Services verwendet. Azure Cognitive Services für Language vereint nun drei einzelne Sprachdienste in Cognitive Services: Textanalyse, QnA Maker und Language Understanding (LUIS). Sie können problemlos von der Textanalyse-API zur Cognitive Service für Language-API migrieren. Weitere Anweisungen finden Sie unter Migrieren zur neuesten Version von Azure Cognitive Service für Language.

Sicherheit

Sicherheit bietet Schutz vor vorsätzlichen Angriffen und dem Missbrauch Ihrer wertvollen Daten und Systeme. Weitere Informationen finden Sie unter Übersicht über die Säule „Sicherheit“.

Alle Daten in Azure Database for PostgreSQL werden automatisch verschlüsselt und gesichert. Sie können Microsoft Defender for Cloud konfigurieren, um Bedrohungen weiter zu entschärfen. Weitere Informationen finden Sie unter Aktivieren von Microsoft Defender für relationale Open-Source-Datenbanken und Reagieren auf Warnungen.

DevOps

Sie können GitHub Actions für die Verbindung mit Azure Database for PostgreSQL konfigurieren, indem Sie die Verbindungszeichenfolge verwenden und einen Workflow einrichten. Weitere Informationen finden Sie unter Schnellstart: Verwenden von GitHub Actions zum Herstellen einer Verbindung mit Azure PostgreSQL.

Darüber hinaus können Sie Ihren Machine Learning-Lebenszyklus mit Azure Pipelines automatisieren. Informationen zum Implementieren eines MLOps-Workflows und zum Erstellen einer CI/CD-Pipeline für Ihr Projekt finden Sie im GitHub-Repository MLOps mit Azure ML.

Kostenoptimierung

Bei der Kostenoptimierung geht es um die Suche nach Möglichkeiten, unnötige Ausgaben zu reduzieren und die Betriebseffizienz zu verbessern. Weitere Informationen finden Sie unter Übersicht über die Säule „Kostenoptimierung“.

Für Cognitive Service für Language sind verschiedene Tarife verfügbar. Die Anzahl der von Ihnen verarbeiteten Textdatensätze wirkt sich auf Ihre Kosten aus. Weitere Informationen finden Sie auf der Preisseite von Cognitive Service für Language.

Nächste Schritte