Wij maken gebruik van Cookies. Cookies zijn bestanden die in je browser worden opgeslagen en zorgen dat de website optimaal werkt, dat je sneller vindt wat je zoekt en dat getoonde content voor jou zo relevant mogelijk is. Lees er meer over in ons cookies- en privacybeleid. Klik hieronder het gewenste niveau.
Niveau 1: Deze cookies zijn noodzakelijk voor een goed en veilig werkende website.
Niveau 1+2: Met deze cookies maken we de website persoonlijker en gebruiksvriendelijker.
Niveau 1+2+3: Deze cookies zorgen ervoor dat we je relevante advertenties kunnen laten zien.
Blog

Azure SQL Server of Database as a Service?

Door: Henri Kluijtmans 04-12-2017

Keuzes bij het inrichten van een server

Bij het inrichten van een server zijn we gewend aan de volgende keuze mogelijkheden:
  • Aantal processoren
  • Snelheid van de processoren
  • Hoeveelheid geheugen
  • Snelheid van de opslag (harde schijf, SSD, netwerk storage, etc.)

Snelheid van de server

Al deze bovenstaande factoren beïnvloeden de snelheid van de database server en op basis van ervaring kan de DBA in samenspraak met het ontwikkelteam een aardige inschatting maken van de specificaties van de server.

Databases in Azure portal

Wat kiezen we in het Azure portal als er een database aangemaakt wordt, want we krijgen hier te maken met DTU. Oftewel “Database transaction unit” of “database throughput unit”, ik verkies de laatste.

Basic, Standaard of Premium

In het Azure portal is de eerste keuze die gemaakt moet worden Basic, Standaard of Premium (met een nieuwe variant Premium RS, maar daarover later meer). Deze keuze heeft met name te maken met de snelheid van lees/schrijf toegang en beschikbaarheid van het systeem.

  • Basic is het meest geschikt voor een kleine database, die doorgaans één actieve bewerking tegelijk ondersteunt. Voorbeelden zijn onder meer databases die worden gebruikt voor ontwikkeling of testen, of kleinschalige, onregelmatig gebruikte toepassingen.
  • Standaard is de beste optie voor Cloud toepassingen met lage tot gemiddelde I/O-prestatievereisten die ondersteuning bieden voor meerdere gelijktijdige query's. Voorbeelden zijn onder meer werkgroep- of web toepassingen.
  • Premium is ontwikkeld voor gebruik bij een hoog transactievolume met hoge I/O-prestatievereisten, waarbij ondersteuning wordt geboden voor veel gelijktijdige gebruikers. Voorbeelden zijn databases die bedrijfskritieke toepassingen ondersteunen.
Azure DTU Basic, Standard and Premium
Buddy de mascotte een rekensom maakt

Performance Counters

Binnen de verschillende service levels is het daarna kiezen voor het aantal DTU’s. Om het aantal DTU’s te bepalen is een DTU calculator ontwikkeld. Deze applicatie maakt gebruik van vier performance counters:

1. Processor – % Processor Time

Deze performance counter wordt gebruikt om het gebruik van de processor te meten per SQL server instantie, maar de DTU’s worden standaard berekend over een database en niet een server dus is het van belang de waarden op database niveau te weten. De rekensom die daarbij gehanteerd kan worden is 100 DTU’s per core bij 100% gebruik.

2. Logical Disk – Disk Reads/Sec

Het aantal leesacties per seconde is een onderdeel van de lees/schrijf activiteit in de standaard rekeneenheid. Globaal komt dit neer op 2000 IOPS per 250 DTU. Waarbij basis en standaard een minder snel schijfsysteem hebben en dit dus eigenlijk alleen geldt voor de premium tier.

3. Logical Disk – Disk Writes/Sec

Het aantal schrijfacties per seconde is een onderdeel van de lees/schrijf activiteit in de standaard rekeneenheid IOPS. Globaal komt dit neer op 2000 IOPS per 250 DTU. Waarbij basis en standaard een minder snel schijfsysteem hebben en dit dus eigenlijk alleen geldt voor de premium tier.

4, Database – Log Bytes Flushed/Sec

Deze performance counter geeft aan hoe vaak gegevens uit de cache naar het transactielog op schijf worden geschreven. Veel korte transacties leveren veel activiteit op de harde schijf en zorgen dus voor een grote DTU consumptie. De berekening komt neer op 5 MB per 250 DTU in de premium tier. Ook deze activiteit is afhankelijk van de snelheid van de onderliggende opslag en dus in Premium niet te vergelijken met standaard.

Bestaande Database

Voor een bestaande database kan een berekening gemaakt worden over het aantal DTU’s dat gebruikt zal gaan worden door gebruik te maken van de DTU calculator en bovenstaande performance counters.

Als een berekening gemaakt moet worden van het aantal DTU’s voor een nieuwe database of je wilt bepalen hoe een applicatie aan te passen is zodat er minder DTU’s gebruikt gaan worden, dan is het belangrijk te kijken naar de manier waarop SQL Server werkt en hierover zijn een aantal opmerkingen te maken:

  • Alle gegevens die opgevraagd worden zullen eerst in het geheugen ingelezen worden, dit geldt ook voor wijzigingen. Dit zijn dus lees activiteiten.
  • Een toevoeg actie bevat alleen een insert, een verwijder actie bevat alleen een delete, maar een update actie bevat zowel een insert als een delete. Dit betekent dus dat een update actie twee keer zoveel bytes schrijft als een insert of delete.
  • Wanneer een actie op een tabel wordt uitgevoerd waarin veel indexen gebruikt worden wordt ook in de index geschreven.
  • Vaste lengte velden (char) verbruiken meer bytes dan dezelfde velden in een variabele lengte (varchar)

Toepassingen voor Basic, Standaard en Premium

Basic

De basic tier met maximaal 5 DTU is een fijne manier om je database te parkeren als je hem niet gebruikt, maar zal voor een applicatie die werkelijk gebruikt wordt snel te weinig performance geven.

Standaard

De standaard tier wordt uitgebreid in DTU’s, maar deze uitbreiding is nog in preview en geeft met name een extra boost aan de performance als het gaat om CPU gebruik. De snelheid van de onderliggende opslag wordt niet verbeterd en zal nog steeds achter blijven op de snelheid van de premium tier. Deze service laag is met name geschikt voor kleine database applicaties (weinig gebruikers, weinig gelijktijdige activiteiten) die nu ook op een kleine server zouden kunnen werken (maximaal 1 core niet volledig gebruikt).

Premium

De premium tier is de meest geschikte voor echte productie databases, maar als je in een on-premise server nu meer dan 12 cores in gebruik hebt dan is er geen service tier voor de Azure SQL database met vergelijkbare performance.

Voor alle Azure SQL Databases

Voor alle Azure SQL databases geldt dat er die kopieën worden gemaakt op verschillende hardware voor fail-over doeleinden. Dit geldt niet voor de Premium RS tier waardoor deze geen gegarandeerde beschikbaarheid heeft en dus eigenlijk niet geschikt is voor productiedoeleinden. De performance van de premium RS (nog in preview) is vergelijkbaar met de premium tier.

Buddy de mascotte met een aan/uit knop
Heb je vragen?
Onze deskundige opleidingsadviseurs helpen je graag bij het maken van de juiste keuze!
Waarom @The Academy?
Praten Icon
Hoge klanttevredenheid
8.7 uit 4224 evaluaties
Checklist Icon
Spreiden van lesdagen
flexibiliteit voor uw gemak
Medewerker Icon
Persoonlijk advies
bij het zoeken van de juiste training
Virtueel Icon
Virtueel trainen
voor alle klassikale en blended trainingen