sql >> Databasteknik >  >> RDS >> Database

Uppdaterade Azure SQL Database Tier Options

Azure SQL Database är Microsofts databas-som-en-tjänst-erbjudande som ger en enorm mängd flexibilitet. Den är byggd som en del av plattform-som-en-tjänst-miljön som ger kunderna ytterligare övervakning och säkerhet för produkten.

Microsoft arbetar ständigt med att förbättra sina produkter och Azure SQL Database är inte annorlunda. Många av de nyare funktionerna vi har i SQL Server lanserades från början i Azure SQL Database, inklusive (men inte begränsat till) Always Encrypted, Dynamic Data Masking, Row Level Security och Query Store.

DTU-prisnivå

När Azure SQL Database först lanserades fanns det ett enda prissättningsalternativ som kallas "DTUs" eller Database Transaction Units. (Andy Mallon, @AMtwo, förklarar DTU:er i "Vad i helvete är en DTU?") DTU-modellen tillhandahåller tre servicenivåer, basic, standard och premium. Grundnivån ger upp till 5 DTU:er med standardlagring. Standardnivån stöder från 10 upp till 3000 DTU:er med standardlagring och premiumnivån stöder 125 upp till 4000 DTU:er med premiumlagring, vilket är storleksordningar snabbare än standardlagring.

vCore Pricing Tier

Snabbspola framåt några år efter att Azure SQL Database släpptes till när Azure SQL Managed Instance var i offentlig förhandsvisning och "vCores" (virtuella kärnor) tillkännagavs för Azure SQL Database. Dessa introducerade de allmänna och affärskritiska nivåerna med Gen 4- och Gen 5-processorer. Gen 5 är det primära hårdvarualternativet nu för de flesta regioner eftersom Gen 4 håller på att åldras.

Gen 5 stöder så få som 2 vCores och upp till 80 vCores med ram tilldelas med 5,1 GB per vCore. Den allmänna nivån ger fjärrlagring med max data-IOPS från 640 för en 2 vCore-databas upp till 25 600 för en 80 vCore-databas. Den affärskritiska nivån har lokal SSD som ger mycket bättre IO-prestanda med max data IOPS som sträcker sig från 8000 för en 2 vCore-databas upp till 204 800 för en 80 vCore-databas. Både generella och affärskritiska nivåer uppgår till max 4 096 GB för lagring, och detta blev en begränsning för många kunder.

HyperScale Database

För att lösa gränsen på 4 TB för Azure SQL Database skapade Microsoft hyperskalenivån. Hyperscale tillåter kunder att skala upp till 100 TB databasstorlek utöver att ge snabb skala ut för skrivskyddade noder. Du kan även enkelt skala upp och ner inom vCore-modellen. Hyperskala databaser tillhandahålls med vCores. Med Gen 5 kan en Hyperscale-databas använda mellan 2 – 80 vCores och 500 – 204 800 IOPS. Hyperscale uppnår hög prestanda från varje beräkningsnod som har SSD-baserade cachar vilket hjälper till att minimera nätverkets rundresor för att hämta data. Det finns en hel del fantastisk teknik involverad med Hyperscale i hur den är utformad för att använda SSD-baserade cachar och sidservrar. Jag rekommenderar starkt att du tar en titt på diagrammet som bryter ner arkitekturen och hur det hela fungerar i den här artikeln.

Serverlös databas

En annan begäran som var mycket vanlig från kunder var möjligheten att automatiskt skala upp och skala ner sin Azure SQL Database när arbetsbelastningen ökar och minskar. Kunder har traditionellt haft möjligheten att programmatiskt skala upp och ner med PowerShell, Azure Automation och andra metoder. Microsoft tog den idén och byggde en ny beräkningsnivå kallad Azure SQL Database serverless, som blev allmänt tillgänglig i november 2019. De tillåter kunden att ställa in minsta och maximala antal vCores. På så sätt kan de veta att det alltid finns en lägsta beräkningsnivå tillgänglig, och de kan alltid automatiskt skala till en angiven beräkningsnivå. Det finns också möjlighet att konfigurera en autopausfördröjning. Den här inställningen låter dig pausa databasen automatiskt efter en viss tid som databasen har varit inaktiv. När en databas går in i autopausstadiet går beräkningskostnaderna till noll och endast lagringskostnader uppstår. Den totala kostnaden för serverlöst är summeringen av beräkningskostnaden och lagringskostnaden. När beräkningsanvändningen ligger mellan minimi- och maximigränserna, baseras beräkningskostnaden på vCores och använda minne. Om den faktiska användningen är under minimivärdet, baseras beräkningskostnaden på minsta vCores och minsta konfigurerade minne.

Den serverlösa nivån har potential att spara mycket pengar och samtidigt ge dem möjligheten att ge en konsekvent databasanvändarupplevelse där databasen kan skalas upp allteftersom efterfrågan kräver det.

Elastiska bassänger

Azure SQL Database har en delad resursmodell som gör det möjligt för kunder att ha ett högre resursutnyttjande. En kund kan skapa en elastisk pool och flytta databaser till den poolen. Varje databas kan sedan börja dela fördefinierade resurser inom den poolen. Elastiska pooler kan konfigureras med DTU-prismodellen eller vCore-modellen. Kunderna bestämmer mängden resurser som den elastiska poolen behöver för att hantera arbetsbelastningen för alla dess databaser. Resursbegränsningar kan konfigureras per databas så att en databas inte kan konsumera hela poolen. Elastiska pooler är bra för kunder som måste hantera ett stort antal databaser eller scenarier för flera innehavare.

Ny maskinvarukonfiguration för Provisioned Compute Tier

Gen4/Gen5-hårdvarukonfigurationerna anses vara "balanserat minne och beräkning". Detta fungerar bra för många SQL Server-arbetsbelastningar, men det har funnits användningsfall för en lägre CPU-latens och högre klockhastighet för CPU-tunga arbetsbelastningar och ett behov av högre minne per vCore. Microsoft har återigen levererat och skapat en datoroptimerad och minnesoptimerad hårdvarukonfiguration. Dessa är för närvarande i förhandsvisning och endast tillgängliga i vissa regioner.

I den allmänna provisionerade nivån kan du välja Fsv2-serien som kan leverera mer CPU-prestanda per vCore än Gen 5-hårdvaran. Sammantaget kan storleken på 72 vCore ge mer CPU-prestanda än 80 vCore Gen 5 genom att ge en lägre CPU-latens och högre klockhastigheter. Fsv2-serien har mindre minne och tempdb per vCore än Gen 5, så det måste tas i beaktande.

I den affärskritiska provisionerade nivån kan du komma åt M-serien som är minnesoptimerad. M-serien erbjuder 29 GB per vCore jämfört med 5,1 GB per vCore i "balansminne och beräkna"-konfigurationen. Med M-serien kan du skala vCore upp till 128 vilket skulle ge upp till 3,7 TB minne. För att aktivera M-serien måste du för närvarande ha ett Pay-As-You-Go eller Enterprise-avtal och öppna en supportförfrågan. Även då är M-serien för närvarande endast tillgänglig i östra USA, norra Europa, västra Europa, västra USA 2, och kan även ha begränsad tillgänglighet i ytterligare regioner.

Slutsats

Azure SQL Database är en funktionsrik databasplattform som erbjuder ett brett utbud av alternativ för beräkning och skalning. Kunder kan konfigurera beräkning för en enda databas eller elastisk pool med hjälp av DTU:er eller vCores. För databaser med stort lagringsbehov eller lässkala ut kan Hyperscale användas. För kunder med varierande arbetsbelastningskrav kan serverlös användas för att automatiskt skala upp och ner när deras arbetsbelastningskrav ändras. Nytt i Azure SQL Database är förhandsgranskningsfunktionen i en beräkningsoptimerad och minnesoptimerad hårdvarukonfiguration för de kunder som behöver CPU med lägre latens eller de som har höga krav på minne till CPU.

För att lära dig mer om Azure-resurser, kolla in mina tidigare artiklar:

  • Alternativ för justering av prestanda för Azure SQL Database
  • Prestandaöverväganden för Azure SQL Managed Instance
  • Nya Azure SQL Database Standard Tier Sizes
  • Överbrygga Azure-gapet:Hanterade instanser
  • Migrera databaser till Azure SQL Database

  1. ORACLE 11g skiftlägesokänslig som standard

  2. Hur man infogar valda kolumner från en CSV-fil till en MySQL-databas med LOAD DATA INFILE

  3. Ta bort förälder om den inte hänvisas till av något annat barn

  4. Använd stor bokstav i varje ord i befintlig tabell