Dela via


Använda csv-minnesintern läscache

I det här avsnittet beskrivs hur du använder systemminne för att öka prestandan för Azure Local och Windows Server genom att cachelagra frekventa läsningar. Skrivningar kan inte cachelagras i minnet.

Azure Local och Windows Server är kompatibla med cacheminnet för klusterdelade volymer (CSV). Att använda systemminne för att cachelagra läsningar kan förbättra prestanda för program som Hyper-V, som använder obuffertad I/O för att komma åt VHD- eller VHDX-filer. (Obufferterad I/Os är alla åtgärder som inte cachelagras av Windows Cache Manager.)

Eftersom minnesintern cache är serverlokal, förbättrar den datalokaliteten. De senaste läsningarna cachelagras i minnet på samma värd där den virtuella datorn (VM) körs, vilket minskar hur ofta läsningar går över nätverket. Detta resulterar i lägre svarstid och bättre lagringsprestanda.

Observera att CSV:s minnesinterna läscache skiljer sig från lagringspoolens cacheminne.

Planeringsöverväganden

Minnesintern läscache är mest effektiv för läsintensiva arbetsbelastningar, till exempel VDI (Virtual Desktop Infrastructure). Om arbetsbelastningen däremot är extremt skrivintensiv kan cachen medföra mer omkostnader än värde och bör inaktiveras.

Du kan använda upp till 80% totalt fysiskt minne för csv-minnesintern läscache. Var noga med att lämna tillräckligt med minne för dina virtuella datorer!

Note

Vissa mikrobenchmarkeringsverktyg som DISKSPD och VM Fleet kan ge sämre resultat med CSV-minnesintern läscache aktiverat än utan det. Som standard skapar VM Fleet en 10 GiB VHDX per virtuell dator – cirka 1 TiB totalt för 100 virtuella datorer – och utför sedan enhetligt slumpmässiga läsningar och skrivningar till dem. Till skillnad från verkliga arbetsbelastningar följer läsningarna inte något förutsägbart eller repetitivt mönster, så minnesintern cache är inte effektiv och medför bara omkostnader.

Konfigurera minnesintern läscache

CSV:s minnesinterna läscache finns i Azure Local, Windows Server 2019 och Windows Server 2016 med samma funktioner. I Azure Local och Windows Server 2019 är det aktiverat som standard med 1 gibibyte (GiB) allokerat. I Windows Server 2016 är det inaktiverat som standard.

OS-version Standardstorlek för CSV-cache
Azure Local 1 GiB
Windows Server 2019 1 GiB
Windows Server 2016 0 (inaktiverad)

Konfigurera cacheminnet med Hjälp av Windows Administrationscenter

Gör följande för att konfigurera cachen med Hjälp av Windows Admin Center:

  1. I Administrationscenter för Windows ansluter du till ett kluster och väljer sedan Inställningar i fönstret Verktyg till vänster.
  2. Välj Minnesintern cache under Lagring i fönstret Inställningar .
  3. I den högra rutan aktiverar eller inaktiverar en kryssruta cacheminnet, och du kan också ange det maximala minne per server som ska allokeras till cacheminnet.
  4. När du är klar väljer du Spara.

I Windows Administrationscenter aktiverar eller inaktiverar en kryssruta cacheminnet. Du kan också ange det maximala minne per server som ska allokeras till cacheminnet.

Konfigurera cacheminnet med PowerShell

Om du vill se hur mycket minne som allokeras med PowerShell kör du följande som administratör:

(Get-Cluster).BlockCacheSize

Värdet som returneras är i mebibyte (MiB) per server. Representerar till exempel 1024 1 GiB.

Om du vill ändra hur mycket minne som allokeras ändrar du det här värdet med hjälp av PowerShell. Om du till exempel vill allokera 2 GiB per server kör du:

(Get-Cluster).BlockCacheSize = 2048

För att ändringarna ska börja gälla omedelbart pausar du och återupptar sedan dina CSV-volymer eller flyttar dem mellan servrarna. Använd till exempel det här PowerShell-fragmentet för att flytta varje CSV till en annan servernod och tillbaka igen:

Get-ClusterSharedVolume | ForEach {
    $Owner = $_.OwnerNode
    $_ | Move-ClusterSharedVolume
    $_ | Move-ClusterSharedVolume -Node $Owner
}

Nästa steg

Relaterad information finns också: