Sdílet prostřednictvím


Rozšíření fondu vyrovnávacích pamětí

platí pro:SQL Server

Funkce rozšíření fondu vyrovnávacích pamětí, zavedená v SQL Serveru 2014 (12.x), poskytuje bezproblémovou integraci nevolatilní paměti s náhodným přístupem (tj. jednotky SSD) do fondu vyrovnávací paměti databázového stroje a výrazně zlepšuje propustnost vstupně-výstupních operací. Rozšíření fondu vyrovnávacích pamětí není dostupné v každé edici SQL Serveru. Další informace najdete v tématu Funkce podporované edicemi SQL Serveru 2016.

Výhody rozšíření fondu vyrovnávací paměti

Primárním účelem databáze SQL Serveru je ukládat a načítat data, takže vstupně-výstupní operace disku s intenzivním výkonem představují základní charakteristiku databázového stroje. Vzhledem k tomu, že vstupně-výstupní operace disku můžou spotřebovávat mnoho prostředků a dokončení trvá poměrně dlouho, SQL Server se zaměřuje na vysoce efektivní vstupně-výstupní operace. Fond vyrovnávací paměti slouží jako primární zdroj přidělení paměti SQL Serveru. Správa vyrovnávací paměti je klíčovou komponentou pro dosažení této efektivity. Komponenta pro správu vyrovnávací paměti se skládá ze dvou mechanismů: správce vyrovnávací paměti pro přístup k databázovým stránkám a aktualizaci databázových stránek a fondu vyrovnávacích pamětí, aby se snížil počet vstupně-výstupních operací databázového souboru.

Data a indexové stránky se čtou z disku do fondu vyrovnávací paměti a upravené stránky (označované také jako špinavé stránky) se zapisují zpět na disk. Zatížení paměti na kontrolních bodech serveru a databáze způsobuje, že aktivní (horké) špinavé stránky v mezipaměti jsou vyřazeny z mezipaměti, zapsány na mechanické disky a poté načteny zpět do mezipaměti. Tyto vstupně-výstupní operace jsou obvykle malé náhodné čtení a zápisy v pořadí od 4 kB do 16 kB dat. U malých náhodných vstupně-výstupních vzorů dochází k častým hledáním, soupeření o rameno mechanického disku, zvýšení latence vstupně-výstupních operací a snížení agregované vstupně-výstupní propustnosti systému.

Typickým přístupem k řešení těchto kritických bodů vstupně-výstupních operací je přidání dalšího DRAM nebo případně přidání vysoce výkonných jednotek SAS. I když jsou tyto možnosti užitečné, mají významné nevýhody: DRAM je dražší než jednotky úložiště dat a přidávání špindle zvyšuje kapitálové výdaje při získávání hardwaru a zvyšuje provozní náklady zvýšením spotřeby energie a zvýšenou pravděpodobností selhání komponent.

Funkce rozšíření fondu vyrovnávací paměti používá nevolatilní úložiště (obvykle SSD) k rozšíření jeho kapacity. Kvůli tomuto rozšíření může fond vyrovnávací paměti pojmout větší pracovní sadu databáze, což vede k přenosu vstupně-výstupních operací mezi pamětí RAM a disky SSD. Tím se efektivně přesměruje malé náhodné vstupně-výstupní operace z mechanických disků na disky SSD. Kvůli nižší latenci a lepšímu náhodnému vstupně-výstupnímu výkonu disků SSD výrazně zvyšuje rozšíření fondu vyrovnávacích pamětí propustnost vstupně-výstupních operací.

Následující seznam popisuje výhody funkce rozšíření fondu vyrovnávací paměti.

  • Zvýšení náhodné vstupně-výstupní propustnosti

  • Nižší latence vstupně-výstupních operací

  • Zvýšená propustnost transakcí

  • Vylepšený výkon čtení s větším hybridním bufferovým poolem

  • Architektura ukládání do mezipaměti, která může využívat současné a budoucí nízkonákladové paměťové jednotky

Koncepty

Následující podmínky platí pro funkci rozšíření fondu vyrovnávací paměti.

Termín Popis
jednotka Solid-State Drive (SSD) Jednotky SSD ukládají data do paměti (RAM) trvalým způsobem. Další informace vizte definici na Wikipedii.
vyrovnávací paměť V SQL Serveru je buffer 8KB stránka v paměti, stejné velikosti jako datová nebo indexová stránka. Mezipaměť vyrovnávací paměti je proto rozdělena na stránky o velikosti 8 KB. Stránka zůstane v mezipaměti vyrovnávací paměti, dokud správce vyrovnávací paměti nepotřebuje vyrovnávací oblast pro čtení dalších dat. Data se zapisuje zpět na disk jenom v případě, že jsou upravená. Tyto upravené stránky v paměti se označují jako špinavé stránky. Stránka je čistá, když odpovídá obrazu databáze na disku. Data v mezipaměti vyrovnávací paměti lze před zápisem zpět na disk upravit vícekrát.
fond vyrovnávacích pamětí Také označováno jako vyrovnávací paměť. Fond vyrovnávacích pamětí je globální prostředek sdílený všemi databázemi pro jejich datové stránky uložené v mezipaměti. Maximální a minimální velikost mezipaměti fondu vyrovnávací paměti se určuje při spuštění nebo při dynamické změně konfigurace instance SYSTÉMU SQL Server pomocí sp_configure. Tato velikost určuje maximální počet stránek, které lze uložit do mezipaměti ve fondu vyrovnávací paměti kdykoli ve spuštěné instanci.

Maximální paměť, kterou lze potvrdit rozšířením fondu vyrovnávacích pamětí, může být omezena jinými aplikacemi běžícími na počítači v případě, že tyto aplikace vytvářejí významný tlak na paměť.
kontrolní bod Kontrolní bod vytvoří známý dobrý bod, ze kterého může databázový stroj začít používat změny obsažené v transakčním protokolu během obnovení po neočekávaném vypnutí nebo chybovém ukončení. Kontrolní bod zapíše špinavé stránky a informace transakčního protokolu z paměti na disk a také zaznamenává informace o transakčním protokolu. Další informace najdete v tématu Kontrolní body databáze (SQL Server).

Podrobnosti

Úložiště SSD se používá jako rozšíření subsystému paměti místo subsystému diskového úložiště. To znamená, že soubor rozšíření fondu vyrovnávací paměti umožňuje správci fondu vyrovnávací paměti používat jak DRAM, tak NAND-Flash paměť k udržení mnohem většího fondu vlažných stránek v nevolatilní paměti s náhodným přístupem, podporované SSD. Tím se vytvoří víceúrovňová hierarchie ukládání do mezipaměti, kde úroveň 1 (L1) tvoří DRAM a úroveň 2 (L2) představuje rozšíření fondu vyrovnávací paměti na disku SSD. Do mezipaměti L2 se zapisují pouze čisté stránky, které pomáhají udržovat bezpečnost dat. Správce vyrovnávací paměti zpracovává přesun čistých stránek mezi mezipamětí L1 a L2.

Následující obrázek obsahuje základní přehled architektury fondu vyrovnávací paměti vzhledem k ostatním komponentám SQL Serveru.

diagram architektury rozšíření fondu vyrovnávací paměti SSD

Pokud je tato možnost povolená, rozšíření fondu vyrovnávací paměti určuje velikost a cestu k souboru ukládání fondu vyrovnávací paměti do mezipaměti na disku SSD. Tento soubor je souvislým rozsahem úložiště na disku SSD a je staticky nakonfigurovaný během spouštění instance SQL Serveru. Změny parametrů konfigurace souboru lze provést pouze v případech, kdy je funkce rozšíření fondu vyrovnávací paměti zakázaná. Pokud je rozšíření fondu vyrovnávací paměti zakázané, odeberou se všechna související nastavení konfigurace z registru. Soubor rozšíření fondu vyrovnávací paměti je odstraněn po vypnutí instance SQL Serveru.

Omezení kapacity

SQL Server Enterprise edition umožňuje maximální velikost rozšíření fondu vyrovnávací paměti 32krát hodnotu max server memory.

Edice SQL Server Standard umožňuje maximální velikost rozšíření fondu vyrovnávací paměti čtyřikrát větší než hodnota max server memory.

Osvědčené postupy

Doporučujeme postupovat podle těchto osvědčených postupů.

  • Po prvním povolení rozšíření fondu vyrovnávací paměti byste měli restartovat instanci SQL Serveru, abyste získali maximální výhody výkonu.

  • Nastavte rozšíření fondu vyrovnávací paměti tak, aby poměr mezi velikostí fyzické paměti (max server memory) a velikost rozšíření fondu vyrovnávací paměti 1:16 nebo méně. Nižší poměr v rozsahu od 1:4 do 1:8 může být optimální. Informace o nastavení možnosti max server memory naleznete v tématu Možnosti konfigurace paměti serveru.

  • Před implementací v produkčním prostředí důkladně otestujte rozšíření fondu vyrovnávací paměti. V produkčním prostředí se vyhněte změnám konfigurace souboru nebo vypněte tuto funkci. Tyto aktivity můžou mít negativní vliv na výkon serveru, protože fond vyrovnávací paměti se při zakázání funkce výrazně zmenší. Pokud je tato funkce zakázána, paměť použitá k podpoře této funkce se neobnoví, dokud se instance SQL Serveru nerestartuje. Pokud je ale funkce znovu povolená, paměť se znovu použije bez restartování instance.

Vrácení informací o rozšíření fondu vyrovnávací paměti

Pomocí následujících zobrazení dynamické správy můžete zobrazit konfiguraci rozšíření fondu vyrovnávací paměti a vrátit informace o datových stránkách v rozšíření.

Čítače výkonu jsou k dispozici v SQL Serveru, v objektu Správce vyrovnávací paměti ke sledování datových stránek v souboru rozšíření fondu vyrovnávací paměti. Další informace najdete v tématu rozšíření fondu vyrovnávací paměti – čítače výkonu.

K dispozici jsou následující XEventy.

XEvent Popis Parametry
sqlserver.
buffer_pool_extension_pages_written
Spouští se, když je stránka nebo skupina stránek vyřazena z fondu vyrovnávací paměti a zapsána do souboru rozšíření fondu vyrovnávací paměti. number_page
first_page_id
first_page_offset
initiator_numa_node_id
sqlserver.
buffer_pool_extension_pages_read
Aktivuje se při čtení stránky ze souboru s příponou fondu vyrovnávací paměti do fondu vyrovnávací paměti. number_page
first_page_id
first_page_offset
initiator_numa_node_id
sqlserver.
buffer_pool_extension_pages_evicted
Spustí se, když je stránka odstraněna ze souboru rozšíření fondu vyrovnávací paměti. number_page
first_page_id
first_page_offset
initiator_numa_node_id
sqlserver.
buffer_pool_eviction_thresholds_recalculated
Aktivuje se při výpočtu prahové hodnoty vyřazení. warm_threshold
cold_threshold
pages_bypassed_eviction
eviction_bypass_reason
eviction_bypass_reason_description
Popis úkolu Článek
Povolte a nakonfigurujte rozšíření fondu vyrovnávací paměti. ALTER SERVER CONFIGURATION
Upravte konfiguraci rozšíření fondu vyrovnávací paměti ZMĚNIT NASTAVENÍ SERVERU
Zobrazení konfigurace rozšíření fondu vyrovnávací paměti sys.dm_os_buffer_pool_extension_configuration
Monitorování rozšíření fondu vyrovnávací paměti sys.dm_os_buffer_descriptors

SQL Server, objekt Správce vyrovnávací paměti