Brent Ozar wie wszystko o szybkiej jeździe – ściga się samochodami i codziennie podkręca serwery SQL z zapierającymi dech w piersiach wynikami wydajności baz danych. W swojej audycji internetowej „Jak mierzyć SQL Server” z serii Quest's Database Training Days Brent przypomniał nam, że wydajność polega na pomiarach.
Zwiększenie wydajności
Brent skorzystał z okazji, aby poćwiczyć dystans społeczny i ubrał część, zakładając pełny kombinezon wyścigowy i kask. W pewnym przekomarzaniu się przed transmisją internetową dowiedzieliśmy się, że musi podłączyć mikrofon do kasku i przykleić słuchawki do uszu! Ale robimy dygresję. Transmisja internetowa dotyczyła wyłącznie osiągów i można było znaleźć wiele analogii z samochodami.
Aby poprawić wydajność SQL Server, pomieszczenia są następujące:
- Wybierz wskaźniki, aby skoncentrować się na poprawie
- Zmierz wydajność przed i po wprowadzeniu ograniczonych zmian (podstawowa metoda naukowa)
- Zrozum, kiedy masz niewłaściwy sprzęt do tego, co chcesz osiągnąć
Wskaźniki dostrajania wydajności bazy danych
Długa dyskusja na temat ciężarówek Ford F150, Ford Fiesta i kilku innych interesujących pojazdów pokazała, że istnieją różne sposoby na skrócenie czasu przejazdu z 0 do 60 mil na godzinę. Możesz zmniejszyć masę pojazdu, dodać większy silnik lub zacząć usuwać nieistotne elementy – jak przednią szybę. Będzie kompromis między wydajnością a użytecznością. Bazy danych są właśnie takie – często są ładowane. To wtedy potrzebne jest niestandardowe dostrojenie wydajności, które wymaga znajomości i poprawy wskaźników.
Brent twierdzi, że istnieją trzy podstawowe wskaźniki potrzebne do dostrajania wydajności samochodów i baz danych:waga, test prędkości (np. od 0 do 60) i intensywność pracy silnika (serwera).
Pomiar wielkości bazy danych
Waga dla SQL Server przekłada się na całkowity rozmiar bazy danych i ilość posiadanych danych. Jest to zwykle mierzone w gigabajtach lub terabajtach. Od około 1-150 GB, SQL Server Standard Edition powinien wystarczyć. Od 150-500 GB to łatwe ładowanie dla Enterprise Edition. Powyżej 500 GB zaczyna mieć znaczenie, czy są to aktywne dane i jak są dostępne. A wszystko powyżej 1 TB danych OLTP może być bardzo trudne.
Prędkość śledzenia wydajności
Wzorzec prędkości w samochodach jest łatwy – MPH. W przypadku bazy danych są to żądania wsadowe na sekundę, ale musi to być trendowane co godzinę w różnych okresach czasu. Oczywiście im więcej zapytań, tym wolniejsza będzie wydajność w zależności od sprzętu.
Ocena obciążeń zapytań
Wreszcie, aby zrozumieć, jak ciężko pracuje baza danych, musisz zrozumieć, jakie zapytania są aktualnie uruchomione i co czeka w kolejce. To da ci współczynnik czasu oczekiwania – w zasadzie, jak długo zadania czekają na wykonanie innych. Twój współczynnik czasu oczekiwania będzie wyrażony jako godziny czasu oczekiwania na godzinę (lub sekundy czasu oczekiwania na sekundę) – nie mieszaj jednostek miary. Kiedy będziesz dobrze radzić sobie z tymi statystykami w czasie, możesz zobaczyć, co wpływa na czas oczekiwania, na przykład, czy jest więcej lub mniej żądań wsadowych, lepiej lub gorzej dostrojonych zapytań itp. Następnie możesz rozwiązać te problemy.
Obejrzyj nagranie z webinaru na żądanie, aby poznać wszystkie mądre rady i humor Brenta.