Använd KLUSTERDELAD cache i minnet med Azure Stack HCIUse the CSV in-memory read cache with Azure Stack HCI

Gäller för: Azure Stack HCI, version 20H2; Windows Server 2019Applies to: Azure Stack HCI, version 20H2; Windows Server 2019

I det här avsnittet beskrivs hur du använder system minne för att öka prestandan hos Azure Stack HCI genom cachelagring av frekventa läsningar.This topic describes how to use system memory to boost the performance of Azure Stack HCI by caching frequent reads. Skrivningar kan inte cachelagras i minnet.Writes cannot be cached in memory.

Azure Stack HCI är kompatibelt med klusterdelad volym (CSV) i cacheminnet för minnes intern läsning.Azure Stack HCI is compatible with the Cluster Shared Volume (CSV) in-memory read cache. Att använda system minne för att cachelagra läsningar kan förbättra prestanda för program som Hyper-V, som använder unbuffed I/O för åtkomst till VHD-eller VHDX-filer.Using system memory to cache reads can improve performance for applications like Hyper-V, which uses unbuffered I/O to access VHD or VHDX files. (Unbuffed I/o är alla åtgärder som inte cachelagras av Windows cache Manager.)(Unbuffered I/Os are any operations that are not cached by the Windows Cache Manager.)

Eftersom InMemory-cachen är Server-Local förbättrar den data platsen: de senaste läsningarna cachelagras i minnet på samma värd där den virtuella datorn körs, vilket minskar hur ofta läsningarna går över nätverket.Because the in-memory cache is server-local, it improves data locality: recent reads are cached in memory on the same host where the virtual machine is running, reducing how often reads go over the network. Detta ger lägre latens och bättre lagrings prestanda.This results in lower latency and better storage performance.

Observera att Read cache för CSV i minnet skiljer sig från cacheminnet för lagringspoolen i Azure Stack HCI.Note that the CSV in-memory read cache is different from the storage pool cache in Azure Stack HCI.

Överväganden vid planeringPlanning considerations

Cacheminnet för minnes intern läsning är mest effektivt för Läs intensiva arbets belastningar, till exempel VDI (Virtual Desktop Infrastructure).The in-memory read cache is most effective for read-intensive workloads, such as Virtual Desktop Infrastructure (VDI). Om arbets belastningen däremot är extremt Skriv intensiv kan cachen introducera mer kostnader än värdet och bör inaktive ras.Conversely, if the workload is extremely write-intensive, the cache may introduce more overhead than value and should be disabled.

Du kan använda upp till 80% av det totala fysiska minnet för CSV-cachen i minnet.You can use up to 80% of total physical memory for the CSV in-memory read cache. Var noga med att lämna tillräckligt med minne för dina virtuella datorer!Be careful to leave enough memory for your virtual machines!

Anteckning

Vissa mikrobenchmarking-verktyg som DISKSPD och VM-flottan kan generera sämre resultat med den inaktiverade CSV-cachen i minnet än utan.Certain microbenchmarking tools like DISKSPD and VM Fleet may produce worse results with the CSV in-memory read cache enabled than without it. Som standard skapar VM-flottan 1 10 GiB VHDX per virtuell dator – cirka 1 TiB totalt för 100 VM – och utför sedan enhetligt slumpmässiga läsningar och skrivningar till dem.By default VM Fleet creates one 10 GiB VHDX per virtual machine – approximately 1 TiB total for 100 VMs – and then performs uniformly random reads and writes to them. Till skillnad från verkliga arbets belastningar, följer läsningarna inte några förutsägbara eller upprepade mönster, så att minnet i minnet inte är effektivt och bara tar upp resurser.Unlike real workloads, the reads don't follow any predictable or repetitive pattern, so the in-memory cache is not effective and just incurs overhead.

Konfigurera cacheminnet för InMemory-läsningConfiguring the in-memory read cache

Det finns en CSV-cache i cacheminnet i Azure Stack HCI, Windows Server 2019 och Windows Server 2016 med samma funktion.The CSV in-memory read cache is available in Azure Stack HCI, Windows Server 2019, and Windows Server 2016 with the same functionality. I Azure Stack HCI och Windows Server 2019 är det på som standard med 1 gibibyte (GiB) allokerat.In Azure Stack HCI and Windows Server 2019, it's on by default with 1 gibibyte (GiB) allocated. I Windows Server 2016 är den inaktive rad som standard.In Windows Server 2016, it's off by default.

OS-versionOS version Standard storlek för CSV-cacheDefault CSV cache size
Azure Stack HCIAzure Stack HCI 1 GiB1 GiB
Windows Server 2019Windows Server 2019 1 GiB1 GiB
Windows Server 2016Windows Server 2016 0 (inaktive rad)0 (disabled)

Om du vill konfigurera cachen med hjälp av Windows administrations Center väljer du Inställningar längst ned i verktygs menyn till vänster.To configure the cache using Windows Admin Center, select Settings at the very bottom of the Tools menu on the left. Gå sedan till Storage > cache i minnet.Then go to Storage > In-memory cache. En kryss ruta aktiverar eller inaktiverar cachen, och du kan också ange det maximala minne per server som ska allokeras till cachen.A checkbox enables or disables the cache, and you can also specify the maximum memory per server to be allocated to the cache. Se till att klicka på Spara längst ned på sidan när du har gjort dina ändringar.Be sure to click Save at the bottom of the page after making your changes.

Om du vill se hur mycket minne som allokeras med PowerShell kör du:To see how much memory is allocated using PowerShell, run:

(Get-Cluster).BlockCacheSize

Värdet som returneras är i mebibytes (MiB) per server.The value returned is in mebibytes (MiB) per server. Representerar till exempel 1024 1 GIB.For example, 1024 represents 1 GiB.

Ändra det här värdet med PowerShell om du vill ändra hur mycket minne som allokeras.To change how much memory is allocated, modify this value using PowerShell. Om du till exempel vill allokera 2 GiB per server kör du:For example, to allocate 2 GiB per server, run:

(Get-Cluster).BlockCacheSize = 2048

För att ändringarna ska börja gälla omedelbart kan du pausa och sedan återuppta dina CSV-volymer eller flytta dem mellan servrar.For changes to take effect immediately, pause then resume your CSV volumes, or move them between servers. Använd exempelvis det här PowerShell-fragmentet för att flytta varje CSV till en annan servernod och tillbaka igen:For example, use this PowerShell fragment to move each CSV to another server node and back again:

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

Nästa stegNext steps

För relaterad information, se även:For related information, see also: