Métrique «pourcentage de DTU» Azure SQL Database

88

Avec la nouvelle structure de niveau Azure SQL Database , il semble important de surveiller l'utilisation de votre base de données «DTU» pour savoir s'il faut mettre à niveau ou rétrograder vers un autre niveau.

Lors de la lecture des niveaux de service et des niveaux de performances Azure SQL Database , il ne parle que de la surveillance avec l'utilisation du pourcentage du processeur, des données et du journal.

Mais, lorsque j'ajoute de nouvelles métriques, j'ai également une option de pourcentage DTU :

Ajouter des métriques de base de données

Je ne trouve rien à ce sujet en ligne. S'agit-il essentiellement d'un résumé des autres métriques liées aux DTU?

Dave Nouveau
la source

Réponses:

100

Un DTU est une unité de mesure des performances d'un niveau de service et est un résumé de plusieurs caractéristiques de base de données. Chaque niveau de service a un certain nombre de DTU qui lui sont attribués afin de comparer facilement le niveau de performance d'un niveau par rapport à un autre.

Unité de débit de base de données (DTU): les DTU permettent de décrire la capacité relative d'un niveau de performance des bases de données Basic, Standard et Premium. Les unités de bureau sont basées sur une mesure combinée du processeur, de la mémoire, des lectures et des écritures. À mesure que les DTU augmentent, la puissance offerte par le niveau de performance augmente. Par exemple, un niveau de performance avec 5 DTU a cinq fois plus de puissance qu'un niveau de performance avec 1 DTU. Un quota DTU maximal s'applique à chaque serveur.

Le quota DTU s'applique au serveur, pas aux bases de données individuelles et chaque serveur a un maximum de 1600 DTU. Le% DTU est le pourcentage d'unités que votre base de données particulière utilise et il semble que ce nombre puisse dépasser 100% de la cote DTU du niveau de service (je suppose à la limite du serveur). Ce pourcentage est conçu pour vous aider à choisir le niveau de service approprié.

De bas en bas de cette annonce :

Par exemple, si votre consommation DTU affiche une valeur de 80%, cela indique qu'elle consomme DTU au taux de 80% de la limite qu'une base de données S2 aurait. Si vous voyez des valeurs supérieures à 100% dans cette vue, cela signifie que vous avez besoin d'un niveau de performances supérieur à S2.

À titre d'exemple, disons que vous voyez une valeur en pourcentage de 300%. Cela vous indique que vous utilisez trois fois plus de ressources que celles disponibles dans un S2. Pour déterminer une taille de départ raisonnable, comparez les DTU disponibles dans un S2 (50 DTU) avec les tailles immédiatement supérieures (P1 = 100 DTU, ou 200% de S2, P2 = 200 DTU ou 400% de S2). Parce que vous êtes à 300% de S2, vous voudrez commencer par un P2 et effectuer un nouveau test.

Embedded.kyle
la source
2
Je recherche et je ne l'ai toujours pas trouvé, que montre ce pourcentage de DTU si nous sommes déjà sur un nouveau niveau? comme si je suis sur S0, le pourcentage DTU affiche-t-il maintenant le graphique S0 ou affiche-t-il toujours "par rapport à s2"? C'est une chose vraiment simple qui n'est pas claire.
Sumit Gupta
1
@SumitGupta le graphique est réinitialisé / vidé lorsque vous changez de niveau, vous n'avez donc pas d'anciennes données à regarder, et la nouvelle échelle de DTU de niveau est en vigueur immédiatement.
Andrew
J'utilise actuellement Azure SQL et j'ai peu de bases de données. La limite de quota par serveur que vous mentionnez ici n'est pas correcte, ou du moins elle est obsolète. Les quotas de DTU sont déterminés par le niveau de tarification qui est spécifique à chaque base de données, et non au serveur. Peut-être que le lien de référence que vous citez a été modifié après votre publication. ... ou est-ce que je rate quelque chose? Merci.
Vladislav
15

Toujours pas assez cool pour commenter, mais en ce qui concerne le commentaire de @ vladislav, l'article original était assez vieux. Voici un document de mise à jour concernant les DTU, qui aiderait à répondre à la question du PO.

https://docs.microsoft.com/en-us/azure/sql-database/sql-database-what-is-a-dtu

Jeff Patton
la source
Ce lien est celui que le portail azure fournit pour répondre à la question "Qu'est-ce qu'une DTU". Merci pour cela.
Ayushmati
13

À partir de ce document, ce pourcentage DTU est déterminé par cette requête:

SELECT end_time,   
  (SELECT Max(v)    
   FROM (VALUES (avg_cpu_percent), (avg_data_io_percent), 
(avg_log_write_percent)) AS    
   value(v)) AS [avg_DTU_percent]   
FROM sys.dm_db_resource_stats;  

ressemble au maximum de avg_cpu_percent, avg_data_io_percentetavg_log_write_percent

Référence:

https://docs.microsoft.com/en-us/sql/relational-databases/system-dynamic-management-views/sys-dm-db-resource-stats-azure-sql-database

jyong
la source
4

DTU n'est rien d'autre qu'un mélange de CPU, de mémoire et d'E / S. Pourquoi avons-nous besoin d'un mélange alors que ces 3 sont assez clairs? Parce que nous voulons une unité de puissance. Mais c'est encore déroutant à bien des égards. Par exemple: si j'augmente simplement la mémoire, la puissance (DTU) augmentera-t-elle? Si oui, comment DTU peut-il être un mélange? C'est un oui. Dans ce cas d'augmentation de la mémoire, selon la requête de la réponse donnée par jyong, DTU sera équivalent à la mémoire (puisque nous l'avons augmenté). MS a même un modèle de tarification basé sur ce DTU et cela a soulevé de nombreuses questions.

En raison de ces confusions et questions, MS a voulu proposer une autre option. Nous avions déjà des spécifications sur site, pourquoi ne pouvons-nous pas les utiliser? En conséquence, le «modèle de tarification vCore» est né. Dans ce modèle, nous avons une visibilité sur la RAM et le processeur. Mais pas dans le modèle DTU.

Le contre-argument de DTU serait que les mesures de DTU sont calibrées à l'aide d'un benchmark qui simule la charge de travail de la base de données du monde réel. Et que nous ne sommes plus sur site;). Oui, il est conçu avec le cloud computing à l'esprit (mais est également utilisé dans les charges de travail OLTP).

Mais ce n'est pas tout. Maintenant que nous entrons dans le modèle de tarification, l'équation change. La question concerne maintenant l'argent et le bundle (quelles sont toutes les fonctionnalités incluses). Ici, le DTU présente certains avantages (à mon avis) mais les entreprises disposant de nombreuses licences existantes seraient en désaccord.

  • DTU a un prix (calcul + stockage + sauvegarde). Plus simple et peut commencer avec des prix plus bas.
  • vCore a des prix différents (calcul, stockage). Software assurance disponible ici. Les entreprises auront des licences sur site, ce qui peut être facilement porté ici (afin qu'elles obtiennent de grosses machines à un prix inférieur à celui du modèle DTU). De plus, ils s'engagent pour plusieurs années et obtiennent des réductions supplémentaires.

Nous pouvons basculer entre les deux en cas de besoin, donc si vous n'êtes pas sûr, commencez par DTU (Basic / Standard / Premium).

Comment savoir quel niveau de tarification utiliser? Accédez au menu de configuration comme indiqué ci-dessous: (à droite / à gauche, vous pouvez basculer entre les deux) VCore

DTU

Même si Vcore est une «machine» plus grande et pour des choses plus importantes, le coût peut parfois être moins cher pour les entreprises. Voici une preuve. DTU coûte 147 $. Mais Vcore coûte 111 $. C'est parce que vous pouvez vous engager pour 3 ans (mais toujours payer mensuellement) et aussi en raison de l'option de réutilisation de licence (les entreprises auront des licences sur site).

Coût DTU

entrez la description de l'image ici

C'est un peu trop que de répondre à une question directe, mais je vais aller de l'avant et rendre cela complet en répondant "comment choisir entre différentes options dans DTU et encore moins choisir entre DTU et vCore". Ceci est répondu dans ce beau blog et cet organigramme explique tout

entrez la description de l'image ici

Nuages ​​bleus
la source
Tellement informatif! Les captures d'écran du portail Azure sont particulièrement utiles.
Ayushmati
0

Pour vérifier l'utilisation exacte de vos services, que ce soit gratuit (toujours gratuit ou 12 mois gratuits) ou Pay-As-You-Go, il est important de surveiller l'utilisation afin que vous sachiez à l'avance les coûts encourus ou quand mettez à niveau votre niveau de service.

Pour vérifier votre utilisation du service gratuit et ses limites, allez à la recherche dans le portail, recherchez avec «Abonnement» et cliquez dessus. vous verrez les détails de chaque service que vous avez utilisé.

En cas d'Azure gratuit de Microsoft, vous pouvez voir le coût encouru pour chacun d'eux.

Consultez Vérifier l'utilisation des services gratuits inclus avec votre compte gratuit Azure entrez la description de l'image ici

J'espère que cela aide quelqu'un!

Karthik
la source