Použití mezipaměti csv pro čtení v paměti

Platí pro: Azure Stack HCI verze 22H2, 21H2 a 20H2; Windows Server 2022, Windows Server 2019, Windows Server 2016

Toto téma popisuje, jak pomocí systémové paměti zvýšit výkon Služby Azure Stack HCI a Windows Serveru ukládáním častých čtení do mezipaměti. Zápisy nelze ukládat do mezipaměti v paměti.

Azure Stack HCI a Windows Server jsou kompatibilní s mezipamětí čtení sdíleného svazku clusteru (CSV). Použití systémové paměti k ukládání čtení do mezipaměti může zlepšit výkon aplikací, jako je Hyper-V, které pro přístup k souborům VHD nebo VHDX využívají vstupně-výstupní operace bez vyrovnávací paměti. (Vstupně-výstupní operace bez vyrovnávací paměti jsou všechny operace, které správce mezipaměti systému Windows neukládají do mezipaměti.)

Vzhledem k tomu, že mezipaměť v paměti je místní na serveru, zlepšuje umístění dat. Nedávná čtení se ukládají do mezipaměti na stejném hostiteli, na kterém je virtuální počítač spuštěný, což snižuje počet čtení přes síť. Výsledkem je nižší latence a lepší výkon úložiště.

Všimněte si, že mezipaměť pro čtení v paměti sdíleného svazku clusteru se liší od mezipaměti fondu úložiště.

Aspekty plánování

Mezipaměť pro čtení v paměti je nejúčinnější pro úlohy náročné na čtení, jako je Infrastruktura virtuálních klientských počítačů (VDI). Naopak, pokud je úloha extrémně náročná na zápis, může mezipaměť představovat větší režii než hodnotu a měla by být zakázaná.

Pro mezipaměť sdíleného svazku clusteru pro čtení v paměti můžete použít až 80 % celkové fyzické paměti. Dávejte pozor, abyste nechali dostatek paměti pro virtuální počítače.

Poznámka

Některé nástroje mikrobenchmarkingu, jako jsou DISKSPD a VM Fleet , můžou s povolenou mezipamětí pro čtení v paměti sdíleného svazku clusteru dosáhnout horších výsledků než bez ní. Ve výchozím nastavení vytvoří flotila virtuálních počítačů jeden 10 GiB VHDX na virtuální počítač – celkem přibližně 1 TiB pro 100 virtuálních počítačů – a pak do nich provádí jednotně náhodné čtení a zápisy. Na rozdíl od skutečných úloh čtení nesleduje žádný předvídatelný nebo opakující se vzor, takže mezipaměť v paměti není efektivní a pouze způsobuje režijní náklady.

Konfigurace mezipaměti pro čtení v paměti

Mezipaměť csv pro čtení v paměti je k dispozici v Azure Stack HCI, Windows Serveru 2019 a Windows Server 2016 se stejnými funkcemi. Ve službě Azure Stack HCI a Windows Server 2019 je ve výchozím nastavení zapnutý s přiděleným 1 gibibajtem (GiB). Ve Windows Server 2016 je ve výchozím nastavení vypnutá.

Verze operačního systému Výchozí velikost mezipaměti CSV
Azure Stack HCI 1 GiB
Windows Server 2019 1 GiB
Windows Server 2016 0 (zakázáno)

Konfigurace mezipaměti pomocí Windows Admin Center

Pokud chcete nakonfigurovat mezipaměť pomocí Windows Admin Center, postupujte takto:

  1. V Windows Admin Center se připojte ke clusteru a v podokně Nástroje vlevo vyberte Nastavení.
  2. V části Úložiště v podokně Nastavení vyberte Mezipaměť v paměti.
  3. V pravém podokně zaškrtávací políčko povolí nebo zakáže mezipaměť a můžete také určit maximální velikost paměti na server, který se má mezipaměti přidělit.
  4. Až budete hotovi, vyberte Uložit.

V Windows Admin Center zaškrtávací políčko povolí nebo zakáže mezipaměť. Můžete také určit maximální velikost paměti na server, která se má mezipaměti přidělit.

Konfigurace mezipaměti pomocí PowerShellu

Pokud chcete zjistit, kolik paměti je přiděleno pomocí PowerShellu, spusťte jako správce následující příkaz:

(Get-Cluster).BlockCacheSize

Vrácená hodnota je v mebibajtech (MiB) na server. Například 1024 představuje 1 GiB.

Pokud chcete změnit přidělenou paměť, upravte tuto hodnotu pomocí PowerShellu. Pokud například chcete přidělit 2 GiB na server, spusťte:

(Get-Cluster).BlockCacheSize = 2048

Pokud se změny projeví okamžitě, pozastavte a obnovte svazky CSV nebo je přesuňte mezi servery. Tento fragment PowerShellu můžete například použít k přesunutí jednotlivých sdílených svazků clusteru do jiného uzlu serveru a zpět:

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

Další kroky

Související informace najdete také v tématu: