Inteligentní aplikace s využitím Azure Database for PostgreSQL

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

Nápady na řešení

Tento článek je myšlenkou řešení. Pokud chcete, abychom obsah rozšířili o další informace, jako jsou potenciální případy použití, alternativní služby, aspekty implementace nebo pokyny k cenám, dejte nám vědět tím, že nám poskytnete zpětnou vazbu k GitHubu.

Tento článek představuje řešení pro automatizaci analýzy a vizualizace dat pomocí umělé inteligence (AI). Základní komponenty v řešení jsou Azure Functions, Azure Cognitive Services a Azure Database for PostgreSQL.

Architektura

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

Stáhněte si soubor aplikace Visio s touto architekturou.

Tok dat

  1. Aktivita funkce Azure umožňuje aktivovat aplikaci Azure Functions v kanálu Azure Data Factory. Vytvoříte připojení propojené služby a pomocí propojené služby s aktivitou určíte funkci Azure, kterou chcete spustit.
  2. Data pocházejí z více zdrojů, včetně Azure Storage a Azure Event Hubs pro data s velkým objemem. Když kanál přijme nová data, aktivuje aplikaci Azure Functions.
  3. Aplikace Azure Functions volá rozhraní API služeb Cognitive Services k analýze dat.
  4. Rozhraní API služeb Cognitive Services vrátí výsledky analýzy ve formátu JSON do aplikace Azure Functions.
  5. Aplikace Azure Functions ukládá data a výsledky z rozhraní API služeb Cognitive Services ve službě Azure Database for PostgreSQL.
  6. Azure Machine Učení používá vlastní algoritmy strojového učení k získání dalších přehledů o datech.
    • Pokud se blížíte kroku strojového učení s perspektivou bez kódu, můžete do dat implementovat další operace analýzy textu, jako je hashování funkcí, Word2Vector a extrakce n-gramů.
    • Pokud dáváte přednost přístupu založenému na kódu, můžete spustit opensourcový model zpracování přirozeného jazyka (NLP) jako experiment v nástroji Machine Učení Studio.
  7. Konektor PostgreSQL pro Power BI umožňuje prozkoumat přehledy interpretovatelné člověkem v Power BI nebo vlastní webové aplikaci.

Komponenty

Podrobnosti scénáře

Automatizovaný kanál k analýze dat používá následující služby:

  • Cognitive Services používá umělou inteligenci k zodpovězení otázek, analýze mínění a překladu textu.
  • Azure Machine Učení poskytuje nástroje strojového učení pro prediktivní analýzu.

K ukládání dat a výsledků řešení používá Azure Database for PostgreSQL. Databáze PostgreSQL podporuje nestrukturovaná data, paralelní dotazy a deklarativní dělení. Díky této podpoře je Azure Database for PostgreSQL efektivní volbou pro vysoce náročné úlohy umělé inteligence a strojového učení, které jsou náročné na data.

Řešení automatizuje doručování analýzy dat. Konektor propojuje Službu Azure Database for MySQL s nástroji pro vizualizaci, jako je Power BI.

Architektura používá aplikaci Azure Functions k ingestování dat z více zdrojů dat. Jedná se o bezserverové řešení, které nabízí následující výhody:

  • Údržba infrastruktury: Azure Functions je spravovaná služba, která vývojářům umožňuje zaměřit se na inovativní práci, která poskytuje hodnotu podniku.
  • Škálovatelnost: Azure Functions poskytuje výpočetní prostředky na vyžádání, takže instance funkcí se škálují podle potřeby. Při poklesu požadavků se prostředky a instance aplikací automaticky odsadí.

Potenciální případy použití

Azure Database for PostgreSQL je cloudové řešení. V důsledku toho se toto řešení nedoporučuje pro mobilní aplikace. Je vhodnější pro podřízenou analýzu v následujících odvětvích a dalších oblastech:

  • Doprava: Predikce údržby
  • Finance: Posouzení rizik a detekce podvodů
  • Elektronické obchodování: Predikce a doporučení zákazníků
  • Telekomunikační funkce: Optimalizace výkonu
  • Nástroje: Prevence výpadků

Důležité informace

Tyto aspekty implementují pilíře dobře architektuře Azure, což je sada hlavních principů, které je možné použít ke zlepšení kvality úlohy. Další informace naleznete v tématu Microsoft Azure Well-Architected Framework.

  • Pro většinu funkcí má kognitivní služba pro rozhraní API jazyka maximální velikost 5120 znaků pro jeden dokument. U všech funkcí je maximální velikost požadavku 1 MB. Další informace o limitech dat a rychlosti najdete v tématu Omezení služeb pro službu Azure Cognitive Service pro jazyk.

  • Ve službě Azure Database for PostgreSQL určuje váš objem příchozího přenosu dat a rychlost výběru služby a režimu nasazení. K dispozici jsou dvě služby:

    • Azure Database for PostgreSQL
    • Azure Cosmos DB for PostgreSQL, dříve označovaný jako režim Hyperscale (Citus)

    Pokud máte velké úlohy názorů a recenzí zákazníků, použijte Azure Cosmos DB for PostgreSQL. Ve službě Azure Database for PostgreSQL jsou k dispozici dva režimy: jeden server a flexibilní server. Pokud chcete zjistit, kdy použít jednotlivé režimy nasazení, přečtěte si téma Co je Azure Database for PostgreSQL?

  • Předchozí verze tohoto řešení používaly rozhraní API služby Cognitive Services Analýza textu. Služba Azure Cognitive Service pro jazyk teď ve službách Cognitive Services sjednocuje tři jednotlivé jazykové služby: Analýza textu, QnA Maker a SLUŽBU LUIS (Language Understanding). Snadno můžete migrovat z rozhraní API Analýza textu do kognitivní služby pro rozhraní API jazyka. Pokyny najdete v tématu Migrace na nejnovější verzi služby Azure Cognitive Service pro jazyk.

Zabezpečení

Zabezpečení poskytuje záruky proti záměrným útokům a zneužití cenných dat a systémů. Další informace najdete v tématu Přehled pilíře zabezpečení.

Všechna data ve službě Azure Database for PostgreSQL se automaticky šifrují a zálohují. Pro další zmírnění hrozeb můžete nakonfigurovat Microsoft Defender for Cloud. Další informace najdete v tématu Povolení Microsoft Defenderu pro opensourcové relační databáze a reakce na výstrahy.

DevOps

Pomocí připojovací řetězec a nastavení pracovního postupu můžete nakonfigurovat GitHub Actions pro připojení k databázi Azure Database for PostgreSQL. Další informace najdete v tématu Rychlý start: Připojení k Azure PostgreSQL pomocí GitHub Actions.

Životní cyklus strojového učení můžete také automatizovat pomocí Azure Pipelines. Informace o tom, jak implementovat pracovní postup MLOps a sestavit kanál CI/CD pro váš projekt, najdete v úložišti GitHub MLOps pomocí Azure ML.

Optimalizace nákladů

Optimalizace nákladů se zabývá způsoby, jak snížit zbytečné výdaje a zlepšit efektivitu provozu. Další informace najdete v tématu Přehled pilíře optimalizace nákladů.

Cognitive Service pro jazyk nabízí různé cenové úrovně. Počet textových záznamů, které zpracováváte, ovlivňuje vaše náklady. Další informace najdete v tématu Cognitive Service pro ceny jazyka.

Další kroky