Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy: SQL Server
W tym artykule przedstawiono sposób rozwiązywania problemów z obniżeniem wydajności z powodu nieprawidłowo wyrównanych operacji we/wy w programie SQL Server, gdy rozmiar sektora fizycznego różni się między dyskami.
Omówienie
Program SQL Server może napotkać nieprawidłowe operacje we/wy, gdy rozmiar sektora fizycznego dysków różni się między serwerami lub systemami magazynowania. Ten warunek może obniżyć wydajność i jest szczególnie powszechny w środowiskach, w których niezgodność rozmiaru sektora jest widoczna, na przykład:
- Maszyny wirtualne z dołączonym magazynem
- Zawsze włączone grupy dostępności
- Wysyłanie dziennika
- Migracje sprzętowe
Na przykład typowy problem występuje, gdy serwer podstawowy używa rozmiaru sektora 4 KB, podczas gdy serwer pomocniczy używa 512 bajtów. Ten problem powoduje nieprawidłowe dostosowanie operacji we/wy podczas synchronizacji dzienników lub procesów przywracania. To niezgodność może spowodować obniżenie wydajności, takie jak powolne przywracanie lub opóźnienia synchronizacji.
Flaga śledzenia 1800 zapewnia, że program SQL Server używa spójnego rozmiaru sektora 4 KB dla operacji we/wy dziennika transakcji, niezależnie od rozmiaru sektora fizycznego dysku bazowego. Ta flaga śledzenia została zaprojektowana w celu zachowania wydajności w środowiskach mieszanych, w których serwery mogły zostać uaktualnione lub zmigrowane do sprzętu z różnymi specyfikacjami magazynu.
W przypadku baz danych z obciążeniami intensywnie korzystającymi z zapisu dostosowanie operacji we/wy może znacznie zwiększyć wydajność, natomiast korzyści mogą być niewielkie w środowiskach intensywnie korzystających z odczytu.
Symptomy
Spadek wydajności w programie SQL Server może wystąpić z powodu nieprawidłowo wyrównanych operacji we/wy, jeśli wystąpi którykolwiek z następujących objawów:
Wolne czasy synchronizacji lub przywracania: nieprawidłowe operacje we/wy mogą spowodować spowolnienie synchronizacji lub przywracania, szczególnie w rozproszonych środowiskach programu SQL Server, takich jak zawsze włączone grupy dostępności lub wysyłanie dziennika.
Komunikaty o błędach w dzienniku błędów programu SQL Server: Komunikaty o błędach związane z operacjami we/wy mogą wskazywać na problemy z niezgodnością, takie jak:
There have been # misaligned log IOs which required falling back to synchronous IO.Wąskie gardła wydajności podczas operacji intensywnie korzystających z zapisu: operacje intensywnie korzystające z zapisu, takie jak kopie zapasowe dzienników lub przywracanie bazy danych, mogą mieć duże opóźnienie dysku i zwiększone czasy oczekiwania we/wy z powodu nieprawidłowo wyrównanych operacji we/wy, co prowadzi do wąskich gardeł wydajności i wolnych czasów odpowiedzi.
Weryfikowanie rozmiaru sektora
Aby uniknąć nieprzygotowanych operacji we/wy, należy upewnić się, że rozmiar sektora fizycznego dysków jest spójny we wszystkich serwerach i systemach magazynowania.
Rozmiar sektora można sprawdzić, uruchamiając następujące polecenie w wierszu polecenia z podwyższonym poziomem uprawnień:
fsutil fsinfo sectorinfo <volume path name>
Poniższy zrzut ekranu przedstawia dane wyjściowe fsutil fsinfo sectorinfo polecenia dla E: dysku, które ma rozmiar sektora o rozmiarze 8 KB, ale rozmiar sektora fizycznego o rozmiarze 4 KB, powodując nieprawidłowe operacje we/wy:
Rozwiązanie
Jeśli występuje spadek wydajności z powodu nieprawidłowo wyrównanych operacji we/wy i nie można zmodyfikować rozmiaru sektora, możesz użyć flagi śledzenia 1800 jako globalnego parametru uruchamiania, aby wymusić użycie spójnego rozmiaru sektora 4 KB dla operacji we/wy dziennika transakcji.
Aby włączyć flagę śledzenia 1800 jako parametr uruchamiania, wykonaj następujące kroki:
W systemie, w którym jest zainstalowany program SQL Server i występuje niezgodność rozmiaru sektora fizycznego, otwórz menedżera konfiguracji programu SQL Server.
Rozwiń węzeł SQL Server Configuration Manager (lokalny) i wybierz pozycję Usługi programu SQL Server.
Kliknij prawym przyciskiem myszy wystąpienie programu SQL Server, które chcesz skonfigurować, i wybierz polecenie Właściwości:
W obszarze Właściwości programu SQL Server wybierz kartę Parametry uruchamiania, wprowadź
-T1800w polu Określ parametr uruchamiania, a następnie wybierz pozycję Dodaj , aby dodać parametr do listy.
Upewnij się, że flaga śledzenia została dodana do listy parametrów uruchamiania. Wybierz przycisk OK , aby zapisać zmiany:
Uruchom ponownie usługę PROGRAMU SQL Server, aby włączyć flagę śledzenia po uruchomieniu wystąpienia.
Uwaga / Notatka
Flaga śledzenia 1800 może być również włączona w systemach o rozmiarze sektora 4 KB bez negatywnego wpływu na wydajność.
Informacje
KB3009974 — poprawka: niska synchronizacja, gdy dyski mają różne rozmiary sektorów