Surveillance et réglage des performances dans Azure SQL Database et Azure SQL Managed Instance

S’applique à : Azure SQL DatabaseAzure SQL Managed Instance

Pour superviser les performances d’une base de données dans Azure SQL Database et Azure SQL Managed Instance, commencez par superviser les ressources de processeur et d’E/S utilisées par votre charge de travail par rapport au niveau de performances de base de données choisi lors de la sélection d’un niveau de service et d’un niveau de performances spécifiques. Pour cela, Azure SQL Database et Azure SQL Managed Instance émettent des métriques de ressources qui peuvent être affichées dans le portail Azure ou avec l’un des outils de gestion SQL Server suivants :

Le tableau suivant présente un résumé des fonctionnalités de surveillance dans Azure SQL Database et Azure SQL Managed Instance.

Solution de supervision SQL Database SQL Managed Instance Surveillance du patrimoine Latence faible Données complètes
Métriques et alertes Oui Oui Oui Oui Non
Query Performance Insight Oui No Oui No Non
Superviser en utilisant des vues DMV Oui Oui No Oui Oui
Surveiller à l’aide du magasin des requêtes Oui Oui No Oui Non
Observateur de base de données (aperçu) Oui Oui Oui Oui Oui
SQL Insights (préversion) dans Azure Monitor Oui Oui No Oui Non
Azure SQL Analytics (préversion) à l’aide des Journaux Azure Monitor Oui Oui Oui No Non

Conseil

L’observateur de base de données est la solution de monitoring recommandée pour les scénarios nécessitant une faible latence de collection de données, une surveillance au niveau du patrimoine, des données de surveillance complètes, notamment des détails au niveau des requêtes et la prise en charge d’analyses avancées sur les données de surveillance collectées.

Conseillers en base de données dans le portail Azure

Azure SQL Database fournit un certain nombre de conseillers en base de données pour proposer des recommandations sur le réglage des performances intelligentes et des options de réglage automatique afin d’améliorer les performances.

En outre, la page Query Performance Insight affiche des détails sur les requêtes responsables de l’utilisation la plus intensive du processeur et des E/S pour les bases de données uniques et mises en pools.

  • Query Performance Insight est disponible dans le volet Vue d’ensemble de votre Azure SQL Database du portail Azure, sous « Performances intelligentes ». Utilisez les informations collectées automatiquement pour identifier les requêtes et commencer à optimiser les performances de votre charge de travail.
  • Vous pouvez également configurer le réglage automatique pour implémenter ces recommandations automatiquement, comme forcer un plan d’exécution de requête à empêcher la régression, ou créer et supprimer des index non cluster en fonction des modèles de charge de travail. Le réglage automatique est également disponible dans le volet Vue d’ensemble de votre Azure SQL Database du portail Azure, sous « Performances intelligentes ».

Azure SQL Database et Azure SQL Managed Instance offrent des fonctionnalités de supervision et de réglage avancées qui s’appuient sur l’intelligence artificielle pour vous aider à résoudre les problèmes et à optimiser les performances de vos bases de données et solutions. Vous pouvez choisir de configurer l’exportation en streaming de ces journaux Intelligent Insights et d’autres journaux de ressources et métriques de bases de données vers l’une des différentes destinations à des fins de consommation et d’analyse.

En dehors du portail Azure, le moteur de base de données possède ses propres capacités de surveillance et de diagnostic qu'utilisent la base de données Azure SQL et SQL Managed Instance, notamment le magasin des requêtes et les vues de gestion dynamiques (DMV). Consultez Surveillance avec des DMV pour permettre aux scripts de surveiller divers problèmes de performances dans Azure SQL Database et Azure SQL Managed Instance.

Télémétrie de surveillance et de diagnostic

Le diagramme suivant détaille tous les moteurs de base de données, les métriques de plateforme, les journaux de ressources et les journaux d’activité Azure générés par les produits Azure SQL, la façon dont ils sont traités, ainsi que la façon dont ils peuvent être exposés à des fins d’analyse.

Diagramme montrant les chemins complets de journalisation et d’information de diagnostic pour les produits Azure SQL.

Superviser et paramétrer Azure SQL dans le portail Azure

Dans le portail Azure, Azure SQL Database et Azure SQL Managed Instance assurent la supervision des métriques de ressources. Azure SQL Database fournit des conseillers en base de données, et Query Performance Insight propose des recommandations de paramétrage des requêtes et une analyse des performances des requêtes. Dans le portail Azure, vous pouvez activer le paramétrage automatique pour les serveurs SQL logiques et leurs bases de données uniques et mises en pool.

Remarque

Les bases de données très peu utilisées pourraient apparaître dans le portail avec une utilisation inférieure à la réalité. En raison de la manière dont la télémétrie est émise lors de la conversion d’une valeur double en un nombre entier le plus proche, certaines quantités d’utilisation inférieures à 0,5 seront arrondies à 0, ce qui entraîne une perte de granularité de la télémétrie émise. Pour plus d’informations, consultez Métriques faibles de base de données et de pool élastique arrondies à zéro.

Supervision des ressources Azure SQL Database et Azure SQL Managed Instance

Vous pouvez superviser rapidement diverses métriques de ressources dans la vue Métriques du portail Azure. Ces métriques vous permettent de voir si une base de données approche des limites des ressources de processeur, de mémoire, d’E/S ou de stockage. Une utilisation élevée de DTU, d'UC ou d'E/S pourrait indiquer que votre charge de travail a besoin d'autres ressources. Cela peut également indiquer que des requêtes doivent être optimisées. Consultez Microsoft.Sql/servers/databases, Microsoft.Sql/servers/elasticPools et Microsoft.Sql/managedInstances pour connaître les métriques prises en charge dans Azure SQL Database et Azure SQL Managed Instance.

Capture d’écran du portail Azure présentant les métriques de ressources pour une base de données SQL.

Pour obtenir un ensemble de règles d’alerte recommandées dans Azure SQL Database, consultez Surveiller Azure SQL Database avec des métriques et des alertes.

Remarque

Les métriques liées au stockage dans Portail Azure, telles que l’espace de données utilisé, sont signalées dans des valeurs de puissance de deux, mais utilisant la puissance de dix unités. Par exemple, 1 Mo d’espace de stockage fait référence à 1 048 576 octets, et non à 1 000 000 octets. Les unités plus récentes utilisées pour les valeurs de puissance de deux sont Kio, Mio, Gio, etc. Pour assurer la compatibilité et la cohérence avec l’utilisation historiquement établie dans le moteur de base de données, les métriques de stockage Azure SQL utilisent les anciennes unités telles que Ko, Mo, Go, etc.

Conseillers en base de données dans Azure SQL Database

Azure SQL Database inclut des conseillers en base de données qui fournissent des recommandations de réglage des performances pour les bases de données uniques et mises en pool. Ces recommandations sont disponibles dans le portail Azure et dans PowerShell. Vous pouvez également activer le réglage automatique afin qu’Azure SQL Database implémente automatiquement ces recommandations de réglage.

Query Performance Insight dans Azure SQL Database

Query Performance Insight affiche dans le portail Azure les performances des requêtes qui consomment le plus de ressources et dont l’exécution et la plus longue pour les bases de données uniques et mises en pool.

Métriques faibles de base de données et de pool élastique arrondies à zéro

À partir de septembre 2020, les bases de données dont l'utilisation est très faible pourraient apparaître dans le portail avec une utilisation inférieure à la réalité. En raison de la manière dont la télémétrie est émise lors de la conversion d’une valeur double en un nombre entier le plus proche, certaines quantités d’utilisation inférieures à 0,5 seront arrondies à 0, ce qui entraîne une perte de granularité de la télémétrie émise.

Par exemple : Imaginez une fenêtre d’une minute avec les quatre points de données suivants : 0,1, 0,1, 0,1, 0,1. Ces valeurs basses sont arrondies à 0, 0, 0, 0 et présentent une moyenne de 0. Si l’un des points de données est supérieur à 0,5, par exemple : 0,1, 0,1, 0,9, 0,1, ils sont arrondis à 0, 0, 1, 0 et présentent une moyenne de 0,25.

Générer des évaluations intelligentes des problèmes de performances

Intelligent Insights pour Azure SQL Database et Azure SQL Managed Instance utilise l’intelligence intégrée pour superviser en permanence l’utilisation de la base de données via l’intelligence artificielle et détecter des événements perturbateurs entraînant des performances médiocres. Intelligent Insights détecte automatiquement les problèmes de performances liés aux bases de données en fonction des temps d’attente d’exécution des requêtes, des erreurs ou des expirations de délais d’attente. Une fois détectée, une analyse détaillée est effectuée par Intelligent Insights qui génère un journal des ressources appelé SQLInsights (non lié à Azure Monitor SQL Insights (préversion)). SQLInsights est une évaluation intelligente des problèmes. Cette évaluation se compose d’une analyse de cause racine du problème de performances de la base de données et, dans la mesure du possible, de recommandations pour une amélioration des performances.

Intelligent Insights est une fonctionnalité unique de l’intelligence intégrée Azure, qui apporte les avantages suivants :

  • Surveillance proactive
  • Analyse des performances personnalisée
  • Détection anticipée de la dégradation des performances de la base de données
  • Analyse de la cause racine des problèmes détectés
  • Recommandations pour l’amélioration des performances
  • Capacité de scale-out sur des centaines de milliers de bases de données
  • Impact positif sur les ressources de DevOps et le coût total de possession

Activer l’exportation en streaming des journaux de métriques et de ressources

Les paramètres de diagnostic sont une fonctionnalité qui contient des catégories de journaux de ressources (précédemment appelés journaux de diagnostic). Vous pouvez activer et configurer l’exportation en streaming de la télémétrie de diagnostic vers l’une des destinations, notamment l’analytique des journaux d’activité, Event Hubs et Stockage Azure.

Remarque

La catégorie de journal des ressources pour Intelligent Insights est appelée SQLInsights. Cela n’est pas lié à la solution de monitoring SQL Insights (aperçu).

Vous configurez les paramètres de diagnostic pour diffuser en continu des catégories de métriques et des journaux de ressources pour des bases de données individuelles, des bases de données mises en pool, des pools élastiques, des instances managées SQL et des bases de données d’instance vers l’une des ressources Azure suivantes.

Espace de travail Log Analytics dans Azure Monitor

Vous pouvez diffuser en continu des journaux de métriques et de ressources vers un espace de travail Log Analytics dans Azure Monitor. Les données diffusées en continu ici peuvent être utilisées par SQL Analytics (préversion), une solution de surveillance cloud uniquement permettant une surveillance intelligente de vos bases de données, avec des rapports de performances, des alertes et des recommandations d’atténuation. Les données transmises en continu à un espace de travail Log Analytics peuvent être analysées avec d'autres données de surveillance collectées et vous permettent aussi d'utiliser d'autres caractéristiques Azure Monitor, comme les alertes et les visualisations.

Remarque

Azure SQL Analytics (préversion) est une intégration avec Azure Monitor, où de nombreuses solutions de monitoring ne sont plus en développement.

Hubs d'événements Azure

Vous pouvez diffuser en continu des journaux de métriques et de ressources vers Azure Event Hubs. Diffusez en continu des données télémétriques vers des hubs d’événements pour fournir les fonctionnalités suivantes :

  • Streaming des journaux vers des systèmes de journalisation et de télémétrie tiers

    Diffusion en continu de toutes vos métriques et de tous vos journaux de ressources vers un Event Hub unique pour envoyer les données de journal vers un outil SIEM ou d’analytique des journaux d’activité tiers.

  • Créer une plateforme de journalisation et de télémétrie personnalisée

    La nature hautement évolutive de l’abonnement aux hubs d’événements vous permet d’ingérer de manière flexible les journaux de métriques et de ressources dans une plateforme de télémétrie personnalisée. Pour plus d’informations, consultez Azure Event Hubs.

  • Afficher l’intégrité du service en procédant au streaming des données de vers Power BI

    Utilisez Event Hubs, Stream Analytics et Power BI pour transformer vos données de diagnostic en informations en temps réel sur vos services Azure. Consultez Stream Analytics et Power BI : tableau de bord d’analyse en temps réel pour les données de streaming pour plus de détails sur cette solution.

Stockage Azure

Diffusez en continu des journaux de métriques et de ressources vers le Stockage Azure. Utilisez le Stockage Azure pour archiver de vastes quantités de données télémétriques de diagnostics pour une fraction du coût des deux options de streaming précédentes.

Utiliser des événements étendus

Vous pouvez également utiliser des événements étendus à des fins de supervision avancée et de résolution des problèmes dans SQL Server, Azure SQL Database et Azure SQL Managed Instance. Les événements étendus sont un outil et une architecture d’événements de « suivi », qui vont au-delà de SQL Trace et permettent aux utilisateurs de collecter autant de données que nécessaire pour résoudre ou identifier un problème de performances, tout en réduisant l’impact sur les performances des applications en cours. Les événements étendus remplacent les fonctionnalités déconseillées que sont Trace SQL et SQL Server Profiler. Pour plus d’informations sur l’utilisation d’événements étendus dans Azure SQL Database, consultez Événements étendus dans Azure SQL Database. Dans Azure SQL Database et SQL Managed Instance, utilisez une cible de fichier d’événements hébergée dans Stockage Blob Azure.