Upravit

Sdílet prostřednictvím


Vytváření monitorování v reálném čase a pozorovatelných systémů pro média

Azure Data Explorer
Azure Functions
Azure AI Poradce Metrik
Azure Blob Storage
Azure Event Hubs

Tato architektura popisuje řešení, které poskytuje monitorování a pozorovatelnost systémů a telemetrických dat zařízení koncových uživatelů v reálném čase. Zaměřuje se na případ použití pro mediální průmysl.

Grafana je ochranná známka příslušné společnosti. Použití této značky nevyžaduje žádné doporučení.

Architektura

Diagram znázorňující architekturu, která poskytuje monitorování a pozorovatelnost systémů a telemetrických dat koncových zařízení v reálném čase

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

Tok dat

V pozorovatelném systému zobrazeném v diagramu se nezpracovaná telemetrie streamuje do služby Azure Blob Storage prostřednictvím protokolu HTTP a konektorů. Nezpracovaná telemetrie se zpracovává, transformuje, normalizuje a ukládá do Azure Data Exploreru pro účely analýzy. Systémy, jako je Grafana a Azure Metrics Advisor, čtou data z Průzkumníka dat a poskytují přehledy koncovým uživatelům.

Konkrétně se jedná o prvky systému v diagramu:

  1. Instrumentace – Instrumentace probíhá prostřednictvím sond nebo agentů nainstalovaných v systémech pro monitorování dat. Tito agenti mají různé formy. Například na platformě streamování videa na vyžádání může společnost používat otevřené standardy dash.js ke shromažďování metrik Quality of Experience od zákazníků.
  2. Polknutí. Tato nezpracovaná telemetrie může pocházet přímo od koncových klientů prostřednictvím volání HTTP. Případně ho můžete nahrát prostřednictvím systémů třetích stran do trvalého úložiště a datových jezer, jako je Blob Storage. Služba Blog Storage podporuje možnost vyvolat funkci Azure při nahrání nového souboru. Pomocí tohoto mechanismu triggeru můžete přesunout nezpracovanou telemetrii do strukturovaných datových skladů.
  3. Transformace a trvalost K normalizaci dat možná budete potřebovat transformační systém. Aplikace Azure Functions podle potřeby transformuje data a pak je zapíše do Průzkumníka dat. Průzkumník dat je ideální pro analýzu velkých objemů dat, protože je navržený pro vysoký výkon a propustnost velkých datových sad.
  4. Monitorování. Azure Managed Grafana podporuje integraci s Průzkumníkem dat. Pomocí funkcí přetahování grafany můžete rychle vytvářet řídicí panely a grafy. Grafana je vhodná pro monitorování médií, protože poskytuje dílčí minutu aktualizace dlaždic řídicího panelu a dá se také použít k upozorňování.
  5. Detekce anomálií Řídicí panel Grafana poskytuje podporu ručního monitorování v noc. S velkou sadou dat a uživatelskou základnou rozloženou mezi geografickými oblastmi a použitím různých zařízení se ale ruční identifikace problémů prostřednictvím grafů a pravidel upozornění, která mají pevně zakódované prahové hodnoty, stává neefektivní. K vyřešení tohoto problému můžete použít AI. Služby jako Metrics Advisor používají algoritmy strojového učení k automatickému pochopení a detekci anomálií na základě dat časových řad. Datová platforma Kusto má navíc integrované funkce detekce anomálií, které v datech zohledňují sezónnost a směrné trendy.

Komponenty

  • Průzkumník dat je spravovaná služba analýzy dat pro analýzu velkých objemů dat v reálném čase. Průzkumník dat je skvělý nástroj pro zpracování velkých datových sad, které vyžadují vysokou rychlost a propustnost načítání dat. Tato architektura používá Průzkumníka dat k ukládání a dotazování datových sad pro účely analýzy.
  • Blob Storage se používá k uchovávání nezpracované telemetrie. Tato telemetrie může pocházet z vašich aplikací a služeb nebo od dodavatelů třetích stran. Data se dají považovat za přechodná, pokud později nepotřebujete provádět další analýzu. Data ze služby Blob Storage se ingestují do clusterů Průzkumníka dat.
  • Azure Event Grid je systém pro doručování událostí. Slouží k naslouchání událostem publikovaným službou Blob Storage. Události služby Azure Storage umožňují aplikacím reagovat na události, jako je vytváření a odstraňování objektů blob. Funkce Azure se přihlásí k odběru událostí publikovaných službou Event Grid.
  • Azure Event Hubs je služba pro příjem dat v reálném čase, kterou můžete použít k ingestování milionů událostí za sekundu z libovolného zdroje. Centra událostí představují front door, často označovaný jako ingestor událostí pro kanál událostí. Ingestor událostí je komponenta nebo služba, která se nachází mezi vydavateli událostí a příjemci událostí. Odděluje produkci datového proudu událostí od spotřeby událostí.
  • Azure Functions je bezserverové řešení, které se používá k analýze a transformaci dat přijatých prostřednictvím koncových bodů HTTP a objektů blob a zápisu do clusteru Průzkumníka dat.
  • Azure Managed Grafana se snadno připojí k Průzkumníku dat. V této architektuře generuje grafy a řídicí panely, které vizualizují telemetrická data. Azure Managed Grafana poskytuje hlubokou integraci s ID Microsoft Entra, abyste mohli implementovat přístup na základě role k řídicím panelům a zobrazením.
  • Metrics Advisor je součástí Aplikace Azure lied AI Services. Používá AI k monitorování dat a detekci anomálií v datech časových řad. Metrics Advisor automatizuje proces použití modelů na data a poskytuje sadu rozhraní API a webový pracovní prostor pro příjem dat, detekci anomálií a diagnostiku. Můžete ho použít i v případě, že nemáte žádné znalosti strojového učení.

Alternativy

Azure Data Factory a Azure Synapse Analytics poskytují nástroje a pracovní prostory pro vytváření pracovních postupů ETL a možnost sledovat a opakovat úlohy z grafického rozhraní. Všimněte si, že Data Factory i Azure Synapse mají minimální prodlevu přibližně 5 minut od doby příjmu dat až po trvalost. Tato prodleva může být v monitorovacím systému přijatelná. Pokud ano, doporučujeme zvážit tyto alternativy.

Podrobnosti scénáře

Organizace často nasazují různé a rozsáhlé technologie k řešení obchodních problémů. Tyto systémy a zařízení koncových uživatelů generují velké sady telemetrických dat.

Tato architektura je založená na případu použití pro mediální průmysl. Streamování médií pro přehrávání živého videa a videa na vyžádání vyžaduje téměř identifikaci a reakci na problémy s aplikací téměř v reálném čase. Aby organizace tento scénář v reálném čase podporovaly, musí shromáždit rozsáhlou sadu telemetrických dat, která vyžaduje škálovatelnou architekturu. Po shromáždění dat jsou potřeba další typy analýzy, jako je AI a detekce anomálií, k efektivní identifikaci problémů v tak velké datové sadě.

Když se nasadí rozsáhlé technologie, systém a zařízení koncových uživatelů, která s nimi pracují, generují obrovské sady telemetrických dat. V tradičních scénářích se tato data analyzují prostřednictvím systému datového skladu a generují přehledy, které je možné použít k podpoře rozhodnutí o správě. Tento přístup může v některých scénářích fungovat, ale není dostatečně rychlý pro případy použití streamovaných médií. K vyřešení tohoto problému se vyžadují přehledy v reálném čase pro telemetrická data generovaná z monitorovacích serverů, sítí a zařízení koncových uživatelů, která s nimi pracují. Systémy monitorování, které zachytávají chyby a chyby, jsou běžné, ale jejich zachycení téměř v reálném čase je obtížné. To je zaměření této architektury.

V nastavení živého streamování nebo videa na vyžádání se telemetrická data generují ze systémů a heterogenních klientů (mobilních, desktopových a televizních). Řešení zahrnuje pořízení nezpracovaných dat a přidružení kontextu k datovým bodům, například dimenze, jako jsou zeměpisné údaje, operační systém koncového uživatele, ID obsahu a poskytovatel CDN. Nezpracovaná telemetrie se shromažďuje, transformuje a ukládá do Průzkumníka dat pro účely analýzy. AI pak můžete použít k pochopení dat a automatizaci ručních procesů pozorování a upozorňování. Pomocí systémů, jako je Grafana a Metrics Advisor, můžete číst data z Průzkumníka dat a zobrazovat interaktivní řídicí panely a aktivovat výstrahy.

Důležité informace

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

Spolehlivost

Spolehlivost zajišťuje, že vaše aplikace může splňovat závazky, které uděláte pro vaše zákazníky. Další informace naleznete v tématu Kontrolní seznam pro kontrolu spolehlivosti.

Důležité obchodní aplikace musí běžet i během rušivých událostí, jako jsou oblasti Azure nebo výpadky CDN. Existují dvě primární strategie a jedna hybridní strategie pro vytváření redundance ve vašem systému:

  • Aktivní/aktivní vysoká dostupnost: Je spuštěn duplicitní kód a funkce. Jeden systém může převzít během selhání.
  • Aktivní/pohotovostní. Aktivní/primární je pouze jeden uzel. Druhý z nich je připravený převzít v případě, že dojde k výpadku primárního uzlu.
  • Smíšený. Některé komponenty/služby jsou v konfiguraci aktivní/aktivní a některé jsou v aktivním/pohotovostním režimu.

Mějte na paměti, že ne všechny služby Azure mají integrovanou redundanci. Například Azure Functions spouští aplikaci funkcí jenom v konkrétní oblasti. Geografické zotavení po havárii Azure Functions popisuje různé strategie, které můžete implementovat v závislosti na tom, jak se vaše funkce aktivují (HTTP versus pub/sub).

Aplikace funkcí pro příjem dat a transformaci se může spouštět v aktivním nebo aktivním režimu. Průzkumníka dat můžete spustit v konfiguracích aktivní/aktivní/aktivní/pohotovostní.

Azure Managed Grafana podporuje redundanci zón dostupnosti. Jednou ze strategií pro vytváření redundance mezi oblastmi je nastavení Grafany v každé oblasti, ve které je cluster Průzkumníka dat nasazený.

Optimalizace nákladů

Optimalizacenákladůch Další informace naleznete v tématu Kontrolní seznam pro kontrolu návrhu proOptimalizace nákladů .

Náklady na tuto architekturu závisí na počtu událostí příchozích telemetrie, úložišti nezpracovaných telemetrických dat ve službě Blob Storage a Průzkumníku dat, hodinových nákladech na Spravovanou grafana Azure a statických nákladech na počet grafů časových řad v Advisoru pro metriky.

Cenovou kalkulačku Azure můžete použít k odhadu hodinových nebo měsíčních nákladů.

Efektivita výkonu

Efektivita výkonu je schopnost vaší úlohy škálovat tak, aby splňovala požadavky, které na ni mají uživatelé efektivním způsobem. Další informace naleznete v tématu Kontrola návrhu kontrolní seznam pro zvýšení efektivity výkonu.

V závislosti na škálování a frekvenci příchozích požadavků může být aplikace funkcí kritickým bodem ze dvou hlavních důvodů:

  • Studený start. Studený start je důsledkem bezserverových spuštění. Odkazuje na čas plánování a nastavení, který je nutný ke zprovoznění prostředí před prvním spuštěním funkce. Ve většině případů je požadovaná doba několik sekund.
  • Frekvence požadavků. Řekněme, že máte 1 000 požadavků HTTP, ale pouze jeden server s vlákny, který je zpracuje. Nebudete moct současně obsluhovat všech 1 000 požadavků HTTP. Pokud chcete tyto žádosti obsluhovat včas, musíte nasadit více serverů. To znamená, že potřebujete horizontálně škálovat.

Doporučujeme používat skladové položky Premium nebo Dedicated k:

  • Eliminujte studený start.
  • Zpracujte požadavky na souběžné požadavky škálováním počtu servisních virtuálních počítačů nahoru nebo dolů.

Další informace najdete v tématu Výběr skladové položky pro cluster Azure Data Exploreru.

Nasazení tohoto scénáře

Informace o nasazení tohoto scénáře najdete v tématu monitorování v reálném čase a pozorovatelnosti pro média na GitHubu. Tato ukázka kódu zahrnuje potřebnou infrastrukturu jako kód (IaC) pro spouštění vývoje a funkce Azure pro příjem a transformaci dat z koncových bodů HTTP a objektů blob.

Přispěvatelé

Tento článek spravuje Microsoft. Původně byla napsána následujícími přispěvateli.

Hlavní autoři:

Další přispěvatelé:

Pokud chcete zobrazit neveřejné profily LinkedIn, přihlaste se na LinkedIn.

Další kroky