SQL Serverin vaativampiin hallintatoimiin kuuluu usein High Availability -ratkaisujen toteuttaminen.
HA-ratkaisun valinnassa painaa moni tekijä, esim.
- Millä tasolla HA:ta tarvitaan koko instanssille vai yksittäisille tietokannoille
- Kuinka paljon ollaan valmiita hallintatoimiin
- Millainen serveri- ja levyjärjestelmä on käytettävissä
- Halutaanko HA:n avulla skaalata järjestelmää
SQL Server AlwaysOn Failover Cluster
Tällä perinteisellä ja hyvin tunnetulla tekniikalla on mm. seuraavia ominaisuuksia ja vaatimuksia:
- Instanssitason suojaus
- Ei varsinaista kuorman tasausta
- Enterprise-versiossa jopa kymmeniä noodeja
- Tarvitsee Windows Server Failover klusterin
- Tarvitsee vikasietoisen yhteisen jaetun levyjärjestelmän
- SQL Server asennetaan klusteriasennuksena kaikille noodeilla ja kaikki tietokannat yhteiselle levyjärjestelmälle (tempdb voi olla paikallisilla levyillä)
- Joustava Failover menettely
- Voi hyödyntää Clustered Shared Volumeja (SQL Server 2014 eteen päin)
- Vaatii vähän hallintaa
- Yleensä kallis ratkaisu
SQL Server AlwaysOn Availability Groups
Tällä hieman uudemmalla tekniikalla on mm. seuraavia ominaisuuksia ja vaatimuksia:
- Suojaus tietokanta(ryhmä) tasolla
- Kuorman jakoa Backup- ja lukuoperaatioille
- Enterprise-versiossa useita noodeja
- Tarvitsee Windows Server Failover klusterin, mutta ei (välttämättä) yhteistä leyjärjestelmää
- SQL Server asennetaan normaalisti (ei klusteriasennuksena)
- Data replikoidaan kaikille noodeille synkronisesti tai asynkronisesti
- Systeemikantoja ja objekteja ei replikoida
- Vaatii hallinnointia esi. Agentin jobien, käyttäjien jne. suhteen
- Voidaan toteuttaa edullisilla palvelimilla
Virtualisointi voi luonnollisesti liittyä molempiin edellisiin vaihtoehtoihin tai sillä yksistään voidaan, virtualisointitekniikasta riippuen, toteuttaa HA-ratkaisuja.
SQL Serverin Seuranta ja optimointi
SQL Serverin seurannassa on käytettävissä useita eri työkaluja ja menetelmiä, mutta on oleellista tietää mitä milloinkin käyttää ja kuinka niiden tuloksia tulkita. Tyypillisiä työkaluja ovat:
- Windowsin Performance Monitor
- SQL Server Profiler
- Systeeminäkymät ja funktiot eli sql-komentojen hyödyntäminen lukuisten asioiden selvittämiseen (SQL cache, wait-ajat, hitaat kyselyt, puuttuvat indekist jne.)
- Extented eventit
- Activity Monitor
- Kolmansien osapuolien seurantatyökalut
Nyt on hyvä huomata, että SQL Server Profiler on vanheneva tuote ja sen käyttö olisi syytä korvata Extented Eventeillä. Extented eventit ovat monille administraattoreille aika vieraita vieläkin ja niiden hyvä osaaminen tuo verrattoman lisän erilaisten suorituskykyongelmien ja epäkäytettävyystilanteiden selvittämiseen.
SQL Serverin ominaisuuksiin ja käyttöön pääset tutustumaan tarkemmin esimerkiksi näissä koulutuksissa:
Linkki
Perusteet voit ottaa haltuun SQL Server Hallinta I -koulutuksessa
Opi analyytikkotason TSQL-kieltä: 20761 Querying Data with Transact-SQL