Korzystanie z pamięci podręcznej odczytu woluminu CSV
Dotyczy: Azure Stack HCI, wersje 22H2 i 21H2; Windows Server 2022, Windows Server 2019, Windows Server 2016
W tym temacie opisano sposób używania pamięci systemowej w celu zwiększenia wydajności usług Azure Stack HCI i Windows Server przez buforowanie częstych operacji odczytu. Nie można buforować zapisów w pamięci.
Rozwiązania Azure Stack HCI i Windows Server są zgodne z pamięcią podręczną odczytu udostępnionego woluminu klastra (CSV). Użycie pamięci systemowej do buforowania odczytów może zwiększyć wydajność aplikacji, takich jak Hyper-V, która używa niebufferowanych operacji we/wy w celu uzyskania dostępu do plików VHD lub VHDX. (Niebufferowane operacje we/wy są operacjami, które nie są buforowane przez Menedżera pamięci podręcznej systemu Windows).
Ponieważ pamięć podręczna w pamięci jest lokalna, zwiększa lokalność danych. Ostatnie operacje odczytu są buforowane w pamięci na tym samym hoście, na którym działa maszyna wirtualna, co zmniejsza częstotliwość operacji odczytu za pośrednictwem sieci. Powoduje to mniejsze opóźnienie i lepszą wydajność magazynu.
Należy pamiętać, że pamięć podręczna odczytu woluminów CSV w pamięci różni się od pamięci podręcznej puli magazynów.
Kwestie dotyczące planowania
Pamięć podręczna odczytu w pamięci jest najbardziej efektywna w przypadku obciążeń intensywnie korzystających z odczytu, takich jak infrastruktura pulpitu wirtualnego (VDI). Z drugiej strony, jeśli obciążenie jest bardzo intensywnie korzystające z zapisu, pamięć podręczna może spowodować większe obciążenie niż wartość i powinna zostać wyłączona.
Możesz użyć do 80% całkowitej pamięci fizycznej dla pamięci podręcznej odczytu woluminu CSV w pamięci. Zachowaj ostrożność, aby pozostawić wystarczającą ilość pamięci dla maszyn wirtualnych!
Uwaga
Niektóre narzędzia mikrobenchmarkowania, takie jak DISKSPD i VM Fleet , mogą powodować gorsze wyniki z włączoną pamięcią podręczną odczytu w pamięci CSV niż bez niej. Domyślnie flota maszyn wirtualnych tworzy jeden dysk VHDX GiB na maszynę wirtualną — łącznie około 1 TiB dla 100 maszyn wirtualnych — a następnie wykonuje jednolicie losowe operacje odczytu i zapisu do nich. W przeciwieństwie do rzeczywistych obciążeń odczyty nie są zgodne z przewidywalnym lub powtarzającym się wzorcem, więc pamięć podręczna w pamięci nie jest efektywna i po prostu wiąże się z obciążeniem.
Konfigurowanie pamięci podręcznej odczytu w pamięci
Pamięć podręczna odczytu w pamięci CSV jest dostępna w usłudze Azure Stack HCI, Windows Server 2019 i Windows Server 2016 z tą samą funkcjonalnością. W usługach Azure Stack HCI i Windows Server 2019 jest ona domyślnie włączona z przydzielonymi 1 gibibajtami (GiB). W Windows Server 2016 jest ona domyślnie wyłączona.
Wersja systemu operacyjnego | Domyślny rozmiar pamięci podręcznej CSV |
---|---|
Azure Stack HCI | 1 GiB |
Windows Server 2019 | 1 GiB |
Windows Server 2016 | 0 (wyłączone) |
Konfigurowanie pamięci podręcznej przy użyciu Windows Admin Center
Aby skonfigurować pamięć podręczną przy użyciu Windows Admin Center, wykonaj następujące czynności:
- W Windows Admin Center połącz się z klastrem, a następnie wybierz pozycję Ustawienia w okienku Narzędzia po lewej stronie.
- Wybierz pozycję Pamięć podręczna w pamięci w obszarze Magazyn w okienku Ustawienia .
- W okienku po prawej stronie pole wyboru włącza lub wyłącza pamięć podręczną, a także można określić maksymalną ilość pamięci na serwer, który ma zostać przydzielony do pamięci podręcznej.
- Po zakończeniu wybierz pozycję Zapisz.
Konfigurowanie pamięci podręcznej przy użyciu programu PowerShell
Aby zobaczyć, ile pamięci jest przydzielonych przy użyciu programu PowerShell, uruchom następujące polecenie jako administrator:
(Get-Cluster).BlockCacheSize
Zwracana wartość jest wyrażona w mebibajtach (MiB) na serwer. Na przykład 1024
reprezentuje 1 GiB.
Aby zmienić ilość przydzielonej pamięci, zmodyfikuj tę wartość przy użyciu programu PowerShell. Na przykład aby przydzielić 2 GiB na serwer, uruchom polecenie:
(Get-Cluster).BlockCacheSize = 2048
Aby zmiany zaczęły obowiązywać natychmiast, wstrzymaj, a następnie wznów woluminy CSV lub przenieś je między serwerami. Na przykład użyj tego fragmentu programu PowerShell, aby przenieść każdy wolumin CSV do innego węzła serwera i wrócić ponownie:
Get-ClusterSharedVolume | ForEach {
$Owner = $_.OwnerNode
$_ | Move-ClusterSharedVolume
$_ | Move-ClusterSharedVolume -Node $Owner
}
Następne kroki
Aby uzyskać powiązane informacje, zobacz również: