Strona korzysta z plików cookies w celu realizacji usług i zgodnie z Polityką Plików Cookies.



24.05.2019

Konferencja IT Manager of...

W dniach 12–14 czerwca w Sopocie odbędzie się konferencja IT Manager of Tomorrow 2019. To...
24.05.2019

Ochrona sieci

Fortinet FortiOS 6.2
24.05.2019

Mniejsza złożoność

Rittal VX25 Ri4Power
24.05.2019

All-in-one NAS

QNAP TDS-16489U R2
24.05.2019

Układy SoC

AMD Ryzen Embedded R1000
23.05.2019

Wzmocniony model

Panasonic Toughbook FZ-N1
23.05.2019

Szybsze sieci

D-Link Smart Mesh Wi-Fi AC1900/AC2600/AC3000
23.05.2019

Curved 4K

Samsung LU32R590
14.05.2019

Bezpłatna konferencja OSEC...

Jako patron medialny serdecznie zapraszamy na bezpłatną konferencję OSEC Forum 2019, któa...

Konfiguracja serwera na potrzeby SQL Server

Data publikacji: 26-06-2018 Autor: Marcin Szeliga

Celem artykułu jest przedstawienie wskazówek dotyczących poprawnej konfiguracji serwera, systemu Windows i serwera SQL Server – poprawnej, czyli takiej, która zapewni nam optymalną wydajność aplikacji bazodanowych.

Chmura i dostępne w niej bazy danych jako usługi (bazy danych dostępne w trybie PaaS) stają się coraz bardziej popularne. Nadal jednak wiele firm decyduje się na uruchomienie serwera baz danych lokalnie. W takim przypadku konieczny jest samodzielny wybór serwera, instalacja i konfiguracja systemu operacyjnego oraz instalacja i konfiguracja serwera baz danych. Poprawne wykonanie tych zadań ma ogromny wpływ na wydajność serwera SQL Server i w konsekwencji na wydajność korzystających z niego aplikacji. 

 
Niestety, często budowa serwera jest przypadkowa, a konfiguracja systemu operacyjnego i serwera baz danych sprowadza się do przeprowadzania domyślnej instalacji (kliknij Dalej). Tymczasem domyślna konfiguracja oprogramowania może i jest najbardziej uniwersalna, ale niekoniecznie najlepsza w danym przypadku.
 
> Konfiguracja serwera
 
Wydajność serwera baz danych zależy od wydajności trzech podsystemów: procesora, pamięci i dysków. Wybierając je, należy kierować się zasadą, według której wydajność serwera ogranicza wydajność jego najwolniejszego podsystemu. Innymi słowy, należy dążyć do skonfigurowania zbilansowanego serwera, tj. takiego, którego każdy z trzech kluczowych podsystemów ma wydajność wystarczającą do optymalnego działania pozostałych. Zalecenie to jest tym ważniejsze, że niezbilansowane serwery nie tylko nie wykorzystują wszystkich swoich zasobów (a więc część zainwestowanych w nie pieniędzy została zmarnowana), ale mogą również wymagać wykupienia większej niż niezbędna liczby licencji na serwer SQL Server.
 
Procesory
 
Procesor jest tym elementem serwera, który najrzadziej się wymienia. Oznacza to, że wybierając go, należy wziąć pod uwagę planowany czas życia serwera – z reguły wynosi on od trzech do pięciu lat. Powinniśmy więc preferować procesory o nowszej architekturze, takiej jak Skylake, oraz nowsze modele procesorów, takie jak Kaby, Coffee Lake czy Cannonlake.
 
Wybierając CPU, powinniśmy pamiętać, że jeden procesor o dwukrotnie wyższej częstotliwości taktowania bardziej przyspieszy działanie systemu niż dwa procesory o niższej częstotliwości taktowania, nawet jeżeli suma częstotliwości taktowania tych procesorów będzie większa od częstotliwości pracy pojedynczego procesora. Wybór mniejszej liczby procesorów o wyższych częstotliwościach taktowania jest też uzasadniony mniejszymi kosztami licencji na SQL Server – SQL Server Enterprise działający na fizycznej maszynie wymaga licencji na każdy rdzeń serwera.
 
Wpływ procesora na wydajność i koszt licencji serwera baz danych ilustruje tabela 1. Kolejnym parametrem procesora, oprócz częstotliwości taktowania liczby rdzeni i ceny, który należy wziąć pod uwagę, jest wielkość pamięci podręcznej. Procesory o nowszych architekturach (takich jak Skylake) dysponują pamięcią podręczną L4 (LLC). Czas dostępu do tej pamięci jest 10-krotnie krótszy od czasu dostępu do pamięci RAM. W efekcie to wielkość pamięci podręcznej, a nie częstotliwość taktowania, ma często zasadniczy wpływ na wydajność serwera.
 
Pamięć
 
Połączenie dwóch czynników: 64-bitowej architektury procesorów, systemów operacyjnych i serwerów baz danych z relatywnie niskimi cenami pamięci RAM (64 GB pamięci DDR4-2400 kosztuje około 650 $) spowodowało, że niewyposażenie serwera w taką ilość pamięci RAM, która pomieści całą operacyjną bazę danych (albo największą tabelę hurtowni danych), jest marnowaniem pieniędzy wydanych na licencje, procesory i dyski. Koszt 1 TB pamięci RAM wynosi około 10 000 $, czyli mniej niż 5% kosztów procesorów.
 
Dyski
 
Wydajność dysków mierzy się na dwa sposoby:
 
  • Dla baz operacyjnych (OLTP) najważniejszy jest czas wykonania operacji zapisu/odczytu – im jest on krótszy, tym lepiej. Czas dostępu do dysków, na których znajdują się pliki dziennika transakcyjnego i bazy tempdb, nie powinien przekraczać 5 ms, a czas dostępu do dysków, na których znajduje się plik danych baz, nie powinien przekraczać 20 ms. 
  • Dla hurtowni danych najważniejsza jest przepustowość (liczba zapisanych/odczytanych bajtów w ciągu sekundy). Hurtownie danych często korzystają z macierzy SAN, a ich przepustowość ograniczona jest przepustowością interfejsu łączącego macierz z serwerem, dlatego macierze należy łączyć z serwerem wyłącznie za pomocą interfejsu PCI Express x8 lub x16 (tabela 2).
 
W większości przypadków to właśnie dyski są najwolniejszym podzespołem serwera. Żeby przekonać się, dlaczego tak jest, policzmy, ile danych w ciągu sekundy może przetworzyć procesor, i zestawmy ten wynik z ilością danych, jakie mogą być odczytane w tym czasie z dysków i pamięci.
 
Współczesne procesory serwerowe przetwarzają, w zależności od architektury i częstotliwości taktowania, od 400 do 800 MB danych przez każdy rdzeń w ciągu sekundy. Wyposażony w 32 rdzenie taktowane częstotliwością 3,2 GHz procesor Intel Xeon Gold 6146 może przetworzyć w ciągu sekundy 24 × 800 = 19 GB danych. 
 
W tym czasie teoretyczny limit ilości danych odczytanych z pamięci RAM wynosi 256 GB (przy założeniu konfiguracji 2,66 GT/s x 8 bajtów na kanał x 6 kanałów x 2 gniazda CPU). Czyli jeżeli cała baza danych znajdowała się w pamięci, możemy zagwarantować stabilną wydajność i wykorzystanie procesorów. 
 
[...]
 
Pracownik naukowy Wyższej Szkoły Bankowej w Poznaniu Wydział Zamiejscowy w Chorzowie, jest autorem książek poświęconych analizie danych i posiada tytuł Microsoft Most Valuable Professional

Pełna treść artykułu jest dostępna w papierowym wydaniu pisma.

.

Transmisje online zapewnia: StreamOnline

All rights reserved © 2019 Presscom / Miesięcznik "IT Professional"