Idea řešení
Pokud se chcete podívat, jak tento článek rozšíříme 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 pomocí GitHub Feedback!
Tato architektura využívá více služeb úložiště k optimalizaci výkonu a nákladů na úložiště. Azure Cosmos DB obsahuje nedávná data a poskytuje dostupnost, výkon a odolnost. Azure Table Storage obsahuje všechna data, nejnovější i historická, a poskytuje tak nákladově efektivní úložiště pro historická data. Nativní Azure Storage replikace replikují data Azure Cosmos DB do jiných oblastí. Data tabulky Azure Storage musí být replikována také pomocí nativní replikace nebo Azure Data Factory. Pravidelně Azure Data Factory historická data z Azure Cosmos DB, aby se snížily náklady.
V tomto scénáři aplikace generuje každý měsíc 3TB dat s třemi měsíci dat uložených ve službě Azure Cosmos DB pro vysokou dostupnost a výkon. Data aplikací se také zapisuje do služby Azure Table Storage v primární oblasti, kde je možné je následně duplikovat do jiné oblasti Azure pomocí Azure Data Factory. Aby byly náklady na úložiště nízké, vymažou se z Azure Cosmos DB všechna data starší než tři měsíce.
Další výhody tohoto přístupu zahrnují další odolnost proti selhání jednotlivých služeb úložiště a povolení klasifikace požadavků na základě jejich významnosti pro použití příslušných služeb úložiště.
Tato technika je zvláště užitečná ve scénářích, kdy přenastavíte platformu technologie úložiště, abyste měli jistotu, že systém bude ve fázi migrace dál podle očekávání.
Potenciální případy použití
Architektura může být vhodná pro všechny aplikace, které používají obrovské objemy dat, které musí být vždy dostupné. Mezi příklady patří aplikace, které:
- Sledujte zvyklosti zákazníků v útratě a nákupní chování.
- Předpověď počasí
- Nabídnou inteligentní systémy přenosů dat, implementují inteligentní systémy přenosů dat nebo k monitorování provozu používají inteligentní technologie.
- Analýza dat Internet věcí (IoT)
- Zobrazení dat inteligentního měřiče nebo použití inteligentní technologie k monitorování dat měřičů
Architektura
Stáhněte si soubor aplikace Visio s touto architekturou.
- Klient se ověřuje pomocí Azure Active Directory (Azure AD) a má udělený přístup k webovým aplikacím hostovaným Azure App Service.
- Azure Front Door brány firewall a nástroje pro vyrovnávání zatížení vrstvy 7 přepne uživatelský provoz v případě výpadku oblasti do jiné oblasti Azure.
- Azure App Service hostuje weby a webová rozhraní API RESTful. Klienti prohlížeče používají aplikace AJAX, které používají rozhraní API.
- Webová rozhraní API deleguje aplikace funkcí pro zpracování úloh na pozadí. Úkoly jsou ve frontě ve frontě Azure Queue Storage frontách.
- Aplikace funkcí hostované službou Azure Functions provádějí úlohy na pozadí aktivované zprávami ve frontě. Aplikace funkcí aktualizují Azure Cosmos DB i Table Storage.
- Azure Cache for Redis aplikace funkcí ukládá data databáze do mezipaměti. Tím se databázová aktivita zrychlí aplikace funkcí a webové aplikace.
- Azure Cosmos DB obsahuje 3 až 4 měsíce nejnovějších dat používaných webovými aplikacemi.
- Tabulka Storage obsahuje historická data používaná webovými aplikacemi.
- Každé tři měsíce Azure Data Factory stará data z Azure Cosmos DB, aby se snížily náklady na úložiště. Data zůstanou v tabulkových Storage.
Komponenty
- Azure Active Directory (Azure AD) je služba pro správu identit a přístupu s více tenanty, která se může synchronizovat s místním adresářem.
- Azure DNS je hostitelská služba s vysokou dostupností pro domény DNS, která aplikacím poskytuje rychlé dotazy DNS a rychlé aktualizace záznamů DNS. Správa Azure DNS je jako správa dalších služeb Azure a používá stejné přihlašovací údaje, rozhraní API, nástroje a fakturaci.
- Azure Front Door je zabezpečená síť pro doručování obsahu (CDN) a nástroj pro vyrovnávání zatížení s okamžitým převzetím služeb při selhání. Funguje na hraničních zařízeních blízko uživatelů a zrychluje doručování obsahu a současně chrání aplikace, rozhraní API a weby před kybernetickými hrozbami.
- Azure App Service je plně spravovaná služba pro vytváření, nasazování a škálování webových aplikací. Aplikace můžete vytvářet pomocí .NET, .NET Core, Node.js, Javy, Pythonu nebo PHP. Aplikace mohou běžet v kontejnerech nebo na Windows nebo Linuxu. Při migraci mainframů je možné front-endové obrazovky nebo webové rozhraní kódovat jako rozhraní REST API založená na protokolu HTTP. Je možné je oddělením a bezstavovou orchestrací systému založeného na mikroslužbách. Další informace o webových rozhraních API najdete v tématu Návrh webového rozhraní API RESTful.
- Azure Functions poskytuje prostředí pro spouštění malých částí kódu, které se nazývají funkce, bez nutnosti založit infrastrukturu aplikace. Můžete ji použít ke zpracování hromadných dat, integraci systémů, práci s IoT a vytváření jednoduchých rozhraní API a mikroslužeb. S mikroslužbami můžete vytvářet servery, které se připojují ke službám Azure a jsou vždy aktuální.
- Azure Storage je sada masivně škálovatelných a zabezpečených cloudových služeb pro data, aplikace a úlohy. Zahrnuje Azure Files, Azure Table Storagea Azure Queue Storage. Azure Files je často efektivním nástrojem pro migraci mainframových úloh.
- Azure Queue Storage poskytuje jednoduché, nákladově efektivní a odolné za fronty zpráv pro velké úlohy.
- Azure Table Storage je úložiště párů klíč-hodnota NoSQL pro rychlý vývoj, které využívá rozsáhlé částečně strukturované datové sady. Tabulky jsou bez schématu a snadno se přizpůsobují měnícím se potřebám. Přístup je pro mnoho typů aplikací rychlý a nákladově efektivní a obvykle stojí méně než jiné typy úložiště s klíči.
- Azure Cache for Redis je plně spravovaná služba ukládání do mezipaměti v paměti a zprostředkovatel zpráv pro sdílení dat a stavu mezi výpočetními prostředky. Zahrnuje open source Redis i komerční produkt z Redis Labs jako spravované služby. Výkon aplikací pro zpracování online transakcí s vysokou propustností můžete zlepšit jejich návrhem na škálování a využití úložiště dat v paměti, jako je Azure Cache for Redis.
- Azure Cosmos DB je globálně distribuovaná vícemodelová databáze, která vašim řešením umožňuje škálovat propustnost a úložiště napříč libovolným počtem geografických oblastí. Komplexní smlouvy o úrovni služeb (SLA) zaručují propustnost, latenci, dostupnost a konzistenci.
- Azure Data Factory je spravovaná služba, která orchestruje a automatizuje přesun a transformaci dat.
Alternativy
- Azure Traffic Manager směruje příchozí požadavky DNS napříč globálními oblastmi Azure na základě vaší volby metod směrování provozu. Poskytuje také automatické převzetí služeb při selhání a směrování výkonu.
- Azure Content Delivery Network (CDN) ukládá statický obsah do mezipaměti na hraničních serverech pro rychlou odezvu a využívá optimalizace sítě ke zlepšení odezvy na dynamický obsah. CDN je zvlášť užitečná, když je uživatelská základna globální.
- Azure Kubernetes Service (AKS) je plně spravovaná služba Kubernetes pro nasazování a správu kontejnerizovaných aplikací. Můžete ji použít k implementaci architektury mikroslužeb, jejíž komponenty se nezávisle škálují na vyžádání.
- Azure Container Instances poskytuje rychlý a jednoduchý způsob, jak spouštět úlohy bez nutnosti spravovat infrastrukturu. Je užitečná při vývoji nebo při spouštění neplánovaných úloh.
- Azure Service Fabric je platforma pro škálování a orchestraci kontejnerů a mikroslužeb.
- Azure Service Bus je spolehlivá cloudová služba zasílání zpráv pro jednoduchou hybridní integraci. V této architektuře se může použít místo Storage front. Další informace najdete v tématu Storage fronty a Service Bus fronty – porovnání a kontrast.
Požadavky
- Vývojáři aplikací musí implementovat více zápisů do obou úložišť dat. To může komplikovat implementaci a správu celkové aplikace.
- Musíte nakonfigurovat, aby Azure Data Factory data na základě časových razítek z Azure Cosmos DB. Ujistěte se, že máte v každé entitě definovaný sloupec časového razítka.
- Ke zjednodušení architektury můžete použít nativní možnosti replikace table Storage, ale omezí vás to na konkrétní oblasti Azure, které podporují replikaci tabulek.
Další kroky
- Styl architektury web-fronta-pracovní proces
- Návrh geograficky distribuované aplikace
- Globální distribuce dat pomocí Azure Cosmos DB
- Volba vhodného rozhraní API pro Azure Cosmos DB
- Ukládání a přístup k datům NoSQL pomocí Azure Cosmos DB a rozhraní API pro tabulky
- Práce s daty typu NoSQL v Azure Cosmos DB
- Modelování a dělení dat ve službě Azure Cosmos DB s využitím příkladu z reálného světa
- Možnosti migrace místních nebo cloudových dat do Azure Cosmos DB
- Migrace stovek terabajtů dat do Azure Cosmos DB
- Úvod do služby Azure Data Factory
- Orchestrace přesunu a transformace dat v Azure Data Factory nebo Azure Synapse kanálu
- Pokyny pro návrh tabulek