Zarovnání vstupu/výstupu svazku (I/O) transakčního protokolu SQL Server Trace Flag 1800
Summary: Příznak trasování Microsoft SQL 1800 je nastavení, které umožňuje SQL Server 4k I/O zarovnání pro svazek protokolu transakcí SQL. V tomto článku prozkoumáme příčinu nesprávně zarovnaných vstupně-výstupních operací protokolu transakcí a výhody použití příznaku trasování 1800. To platí pro úložná řešení společnosti Dell a dalších dodavatelů s virtualizovanými řešeními SQL. ...
Symptoms
Pokud dojde k nesprávně zarovnaným vstupně-výstupním operacím, může u aplikace zaznamenat zvýšenou latenci zápisu pro zápisy transakčních protokolů během období vkládání velkých objemů dat do databáze.
Podrobný příklad detekce potenciálního vychýlení naleznete na tomto blogu společnosti Broadcom. K diagnostice problému použijte nástroj "Process Monitor" na straně serveru SQL nebo nástroje vSphere, jako je například "vSAN I/O Insight".
Vliv vychýlení vstupů/výstupů do značné míry závisí na struktuře pracovního zatížení. Obecně platí, že u větších sekvenčních vstupně-výstupních operací byl dopad pozorován významněji.
Příklad latence z hlediska výkonu zápisu bez příznaku trasování 1800:

S nastaveným příznakem trasování 1800:
Cause
Systém vSphere ESXi zpřístupňuje disky VMware Virtual Machine Disks (VMDK) operačnímu systému hosta s velikostí fyzického sektoru 512 bajtů (formátování 512n).
SQL Server používá pokročilý mechanismus pro výpočet velikosti bloku vstupně-výstupních operací transakčního protokolu. SQL přebírá velikost fyzického sektoru prezentovaného souboru VMDK, kde jsou umístěny soubory protokolu transakcí, aby bylo možné zarovnat velikost bloku vstupně-výstupních operací protokolu transakce. To se liší u datových svazků, které tradičně používají velikost alokační jednotky systému souborů (NTFS) (řízenou uživatelem).
Zarovnání disku I/O zajišťuje, že data jsou zapsána na úložné médium způsobem, který je zarovnán s fyzickými sektory disku. To pomáhá předcházet vychýlení operací I/O, které mohou ovlivnit výkon zápisu.
Poznámka: Nejedná se o specifické řešení úložiště. Vychýlené vstupy/výstupy spravují různá řešení vlastním způsobem a nemusí vykazovat stejné příznaky. Bez ohledu na to se vždy doporučuje sladit vstupně-výstupní operace podle vzorových postupů řešení úložiště.
Resolution
Pomocí příznaku trasování 1800 můžete zajistit, aby byl svazek transakčního protokolu SQL správně zarovnaný s hranicí 4k. V závislosti na velikosti bloku svazku základního úložného řešení se optimalizuje výkon zápisu.
Před povolením příznaku trasování 1800 se obraťte na tým Microsoft SQL a potvrďte potenciální vychýlení a pokyny ke konfiguraci.
Poznámka: Příznak trasování 1800 vyžaduje restartování služby SQL Server. Použití příznaku pomocí příkazu "dbcc trace on" nástroje Database Consistency Checker (DBCC) nemá žádný účinek.
Additional Information
Microsoft odkazuje na příznak trasování 1800 pro skupiny dostupnosti se skupinami replikace na různých discích. Příznak trasování se ukázal jako účinný i v obecném výkonu osvědčených postupů.