Det är viktigt att förstå dataanvändningsmönstren för att utforma en optimerad nivåindelad strategi. Rätt strategi för datanivåindelad kan hjälpa dig att spara pengar och skala ditt program utan att lägga till kostnader. I följande diagram är programdata åtskilda av kunden och delas in ytterligare i olika kategorier baserat på användningsmönster.
- Den heta nivån har data som måste vara högtillgängliga och tillgängliga. Konfigurationsdata, kundprofiler, aktuella studentkurser och aktuella marknadsföringskampanjer är exempel på data på den högsta nivån.
- Den lågnivånivån har data med lägre tillgänglighetskrav – data som kan lagras till en lägre kostnad än data på den heta nivån. Till exempel är Azure Table Storage, med svarstider över 10 ms, lagring på låg nivå jämfört med Azure Cosmos DB.
- Arkivdata klassificeras som historiska data som lagras under en viss period för juridiska krav och efterlevnadskrav. Du kan behålla arkivdata i Azure Data Lake Storage långa kvarhållningsperioder till mycket låg kostnad.
Potentiella användningsfall
Följande arkitektur 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 används för:
- Köra flera kampanjer eller kampanjer
- Utföra globala undersökningar
- Köra forskningsexperiment
- Köra flera projekt, hantera dokument och omsourcing
- Hantera universitetets registrering och schemaläggning
Arkitektur
Programdata lagras i Azure Cosmos DB, som replikerar data till olika Azure-regioner med den valda konsekvensnivån. Datareplikeringen kan uppnås med en åtgärd med ett klick som förenklar den övergripande implementeringen av lösningen. Azure Data Factory används för att flytta historiska data från Azure Cosmos DB till Azure Table Storage att minska kostnaderna. Du kan också flytta data till andra lagringsenheter, till exempel Azure Data Lake, för rapportering. Senare kan du arkivera data med hjälp av säkerhetskopiering eller Azure Storage arkivlagringsnivå för att ytterligare minska kostnaderna.
Ladda ned en Visio-fil med den här arkitekturen.
- Klienten autentiseras med Azure Active Directory (Azure AD) och beviljas åtkomst till webbprogram som finns på Azure App Service.
- Azure Front Door, en brandvägg och layer 7-lastbalanserare, växlar användartrafik till en annan Azure-region vid ett regionalt avbrott.
- 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.
- Webb-API:er delegerar funktionsappar för att hantera bakgrundsaktiviteter. Aktiviteterna köas i Azure Queue Storage köer.
- Funktionsapparna som Azure Functions utför bakgrundsaktiviteterna som utlöses av köade meddelanden.
- Azure Cache for Redis cachelagrar databasdata för funktionsapparna. Detta avlastar databasaktiviteten och påskyndar funktionsapparna och webbapparna.
- Azure Cosmos DB innehåller de data som används av webbprogrammen och säkerställer att alla ändringar i en databas också görs i replikdatabaser.
- Azure Data Factory används för att flytta historiska data från Azure Cosmos DB till Azure Table Storage att minska kostnaderna.
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.
- 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 massdata, 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 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 Storageoch Azure Queue 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 datauppsättningar. 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 nyckellagring.
- 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 transaktioner med högt dataflöde online genom att utforma dem för skalning och för att använda ett minnesinspel, till exempel Azure Cache for Redis.
- Azure Cosmos DB är en globalt distribuerad databas med flera modeller som gör det möjligt för dina lösningar att skala dataflöde och lagringskapacitet över valigt antal geografiska regioner. Omfattande serviceavtal (SLA) garanterar dataflöde, svarstid, tillgänglighet och konsekvens.
- Azure Data Factory är en hanterad tjänst som orkestrerar och automatiserar dataförflyttning och datatransformering.
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 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örd och kontrasterad.
Överväganden
- Azure Data Factory eller ett verktyg från tredje part kan migrera data från Azure Cosmos DB till Azure Table Storage.
- Om du migrerar data från ett gammalt lagringssystem måste du skriva rutiner för att kopiera gamla data till Cosmos DB. Kontrollera att du har tidsstämpel- och kopieringsflaggor för att spåra förloppet för datamigrering.
Nästa steg
- Arkitekturformat för Web-Queue-Worker
- Utforma ett geografiskt distribuerat program
- Distribuera dina data globalt med Azure Cosmos DB
- Välj rätt API för Azure Cosmos DB
- Lagra och komma åt NoSQL-data med Azure Cosmos DB och Tabell-API
- Arbeta med NoSQL-data i Azure Cosmos DB
- Så här modellerar och partitionerar du data i Azure Cosmos DB med ett verkligt exempel
- Alternativ för att migrera dina lokala eller molnbaserade data till Azure Cosmos DB
- Migrera hundratals terabyte data till Azure Cosmos DB
- Introduktion till Azure Data Factory
- Samordna dataförflyttning och -transformering i Azure Data Factory eller Azure Synapse pipeline
- Riktlinjer för tabelldesign
- Använda geo-redundans för att utforma program med hög tillgänglighet