Optimerad lagring – tidsbaserad med Data Lake

Front Door
App Service
Functions
Cosmos DB
Data Lake

Den här arkitekturen använder flera Azure-tjänster för att optimera lagringsprestanda och kostnader. Azure Cosmos DB senaste data och uppfyller programmets krav på tillgänglighet, prestanda och återhämtning. De inbyggda Azure Cosmos DB replikeringsfunktionerna replikerar Azure Cosmos DB data till andra regioner. Med jämna mellanrum Azure Data Factory äldre data från Azure Cosmos DB till Azure Data Lake för att minska lagringskostnaderna.

Potentiella användningsfall

Arkitekturen kan vara lämplig för alla program som använder enorma mängder data som alltid måste vara tillgängliga. Exempel är appar som:

  • Spåra kundernas utgiftsvanor och shoppingbeteende.
  • Prognostiserade väderleksprognoser.
  • Erbjuda smarta trafiksystem eller implementera smarta trafiksystem eller använd smart teknik för att övervaka trafiken.
  • Analysera IoT Sakernas Internet data (manufacturing Sakernas Internet).
  • Visa smarta mätardata eller använd smart teknik för att övervaka mätardata.

Arkitektur

Arkitekturen i ett motståndskraftigt system som använder två typer av lagring för att minska kostnaderna.

Ladda ned en Visio-fil med den här arkitekturen.

  1. Klienten autentiseras med Azure Active Directory (Azure AD) och beviljas åtkomst till webbprogram som finns på Azure App Service.
  2. Azure Front Door, en brandvägg och layer 7-lastbalanserare, växlar användartrafik till en annan Azure-region vid ett regionalt avbrott.
  3. Azure App Service är värd för webbplatser och RESTful-webb-API:er. Webbläsarklienter kör AJAX-program som använder API:erna.
  4. Webb-API:er delegerar funktionsappar för att hantera bakgrundsaktiviteter. Uppgifterna köas i Azure Queue Storage queues.
  5. De funktionsappar som Azure Functions utför bakgrundsaktiviteterna som utlöses av köade meddelanden.
  6. Azure Cache for Redis cachelagrar databasdata för funktionsapparna. Detta avlastar databasaktiviteten och påskyndar funktionsapparna och webbapparna.
  7. Azure Cosmos DB 3 till 4 månader av de senaste data som används av webbprogrammen.
  8. Data Lake Storage innehåller historiska data som används av webbapparna.
  9. Med jämna Azure Data Factory flyttar data från Azure Cosmos DB till Azure Data Lake för att minska lagringskostnaderna.

Komponenter

  • Azure Active Directory (Azure AD) är en identitets- och åtkomsthanteringstjänst för flera innehavare som kan synkroniseras med en lokal katalog.
  • Azure DNS är en värdtjänst med hög tillgänglighet för DNS-domäner som tillhandahåller appar med snabba DNS-frågor och snabba uppdateringar av DNS-poster. Att Azure DNS är som att hantera andra Azure-tjänster och använder samma autentiseringsuppgifter, API:er, verktyg och fakturering.
  • Azure Front Door är ett säkert nätverk för innehållsleverans (CDN) och lastbalanserare med omedelbar redundans. Den fungerar vid gränsen nära användarna, vilket påskyndar innehållsleveransen samtidigt som appar, API:er och webbplatser skyddas mot cyberhot.
  • Azure App Service är en helt hanterad tjänst för att skapa, distribuera och skala webbappar. Du kan skapa appar med hjälp av .NET, .NET Core, Node.js, Java, Python eller PHP. Appar kan köras i containrar eller på Windows eller Linux. I en stordatormigrering kan frontend-skärmarna eller webbgränssnittet kodas som HTTP-baserade REST-API:er. De kan separeras och kan vara tillståndslösa för att orkestrera ett mikrotjänstbaserat system. Mer information om webb-API:er finns i RESTful web API design (RESTful-webb-API-design).
  • Azure Functions en miljö för att köra små delar av kod, som kallas funktioner, utan att behöva upprätta en programinfrastruktur. Du kan använda den för att bearbeta bulkdata, integrera system, arbeta med IoT och skapa enkla API:er och mikrotjänster. Med mikrotjänster kan du skapa servrar som ansluter till Azure-tjänster och som alltid är uppdaterade.
  • Azure Storage är en uppsättning mycket skalbara och säkra molntjänster för data, appar och arbetsbelastningar. Den innehåller Azure Files,Azure Table Storage,Azure Queue Storageoch Azure Data Lake Storage. Azure Files är ofta ett effektivt verktyg för att migrera stordatorarbetsbelastningar.
  • Azure Queue Storage tillhandahåller enkel, kostnadseffektiv och beständig meddelandekö för stora arbetsbelastningar.
  • Azure Table Storage är ett nyckelvärdeslager i NoSQL för snabb utveckling som använder enorma halvstrukturerade datamängder. Tabellerna är schemalösa och anpassas enkelt när behoven ändras. Åtkomsten är snabb och kostnadseffektiv för många typer av program och kostar vanligtvis mindre än andra typer av nyckelad lagring.
  • Azure Cache for Redis är en fullständigt hanterad cachelagringstjänst i minnet och autjämning av meddelanden för delning av data och tillstånd mellan beräkningsresurser. Den innehåller både Redis med öppen källkod och en kommersiell produkt från Redis Labs som hanterade tjänster. Du kan förbättra prestandan för program för bearbetning av stora dataflöden online genom att utforma dem för skalning och för att använda ett minnesinspelande datalager, till exempel Azure Cache for Redis.
  • Azure Cosmos DB är Microsofts globalt distribuerade databas för flera modeller som gör det möjligt för dina lösningar att elastiskt och oberoende skala dataflöde och lagring i valigt antal geografiska regioner. Det erbjuder garantier för dataflöde, svarstid, tillgänglighet och konsekvens med omfattande serviceavtal (SLA).
  • Azure Data Factory är en hanterad tjänst som orkestrerar och automatiserar dataförflyttning och datatransformering.
  • Azure Data Lake Storage är säkra och mycket skalbara datasjöfunktioner som bygger på Azure Blob Storage.

Alternativ

  • Azure Traffic Manager dirigerar inkommande DNS-begäranden i de globala Azure-regionerna baserat på ditt val av trafikroutningsmetoder. Den tillhandahåller också automatisk redundans och prestandadirigering.
  • Azure Content Delivery Network (CDN) cachelagrar statiskt innehåll på gränsservrar för snabba svar och använder nätverksoptimeringar för att förbättra svaret för dynamiskt innehåll. CDN är särskilt användbart när användarbasen är global.
  • Azure Kubernetes Service (AKS) är en fullständigt hanterad Kubernetes-tjänst för distribution och hantering av program i containrar. Du kan använda den för att implementera en arkitektur för mikrotjänster vars komponenter skalas oberoende på begäran.
  • Azure Container Instances är ett snabbt och enkelt sätt att köra uppgifter utan att behöva hantera infrastrukturen. Det är användbart under utveckling eller för att köra oplanerade uppgifter.
  • Azure Service Fabric är en plattform för skalning och orkestrering av containrar och mikrotjänster.
  • Azure Service Bus är en tillförlitlig meddelandetjänst i molnet för enkel hybridintegrering. Det kan användas i stället för Queue Storage i den här arkitekturen. Mer information finns i Storage köer och Service Bus köer – jämförda och kontrasterade.
  • Azure Synapse Link för Azure Cosmos DB är en molnbaserad funktion för hybridtransaktions- och analysbearbetning (HTAP) som gör att du kan köra analys i nära realtid över driftdata i Azure Cosmos DB. Azure Synapse Link skapar en nära sömlös integrering mellan Azure Cosmos DB och Azure Synapse Analytics.
  • Azure Synapse Analytics är det snabba, flexibla och betrodda informationslagret i molnet där du kan skala, beräkna och lagra elastiskt och oberoende, med massivt parallell bearbetning.

Överväganden

  • Historiska data måste migreras till Azure Data Lake som en enda aktivitet för att säkerställa lösningens kostnadseffektivitet.
  • Programutvecklare måste implementera rutiner för datamigrering som använder Azure Data Factory för att flytta data från Azure Cosmos DB till Azure Data Lake.
  • Om du migrerar data från ett gammalt lagringssystem kan du behöva skriva rutiner för att kopiera en del av gamla data till Cosmos DB. Kontrollera att du har tidsstämpel- och kopieringsflaggor för att spåra förloppet för migrering av data.
  • Du kan optimera den övergripande arkitekturen ytterligare genom att ersätta Azure Redis Cache med Azure Cosmos DB integrerad cache.

Nästa steg