Azure SQL Database serverlessAzure SQL Database serverless

S’APPLIQUE À : Azure SQL Database

Serverless est un niveau de calcul destiné aux bases de données uniques d'Azure SQL Database qui met automatiquement à l'échelle les calculs en fonction de la demande en charge de travail, et facture la quantité de calcul utilisée par seconde.Serverless is a compute tier for single databases in Azure SQL Database that automatically scales compute based on workload demand and bills for the amount of compute used per second. Le niveau de calcul serverless met aussi automatiquement en pause les bases de données pendant les périodes d’inactivité, quand seul le stockage est facturé, et reprend leur exécution automatiquement avec l’activité.The serverless compute tier also automatically pauses databases during inactive periods when only storage is billed and automatically resumes databases when activity returns.

Niveau de calcul serverlessServerless compute tier

Le niveau de calcul serverless pour les bases de données uniques dans Azure SQL Database est paramétré par une plage de mise à l’échelle automatique du calcul et un délai de mise en pause automatique.The serverless compute tier for single databases in Azure SQL Database is parameterized by a compute autoscaling range and an autopause delay. La configuration de ces paramètres déterminent l’expérience de performances de base de données et le coût du calcul.The configuration of these parameters shapes the database performance experience and compute cost.

facturation de serverless

Configuration des performancesPerformance configuration

  • Les quantités minimale et maximale de vCores sont des paramètres configurables qui définissent la plage de la capacité de calcul disponible pour la base de données.The minimum vCores and maximum vCores are configurable parameters that define the range of compute capacity available for the database. Les limites en mémoire et E/S sont proportionnelles à la plage de vCore spécifiée.Memory and IO limits are proportional to the vCore range specified.
  • Le délai de mise en pause automatique est un paramètre configurable qui définit la durée pendant laquelle la base de données doit être inactive avant d’être automatiquement mise en pause.The autopause delay is a configurable parameter that defines the period of time the database must be inactive before it is automatically paused. La base de données reprend automatiquement lors de la prochaine connexion ou activité.The database is automatically resumed when the next login or other activity occurs. Vous pouvez également désactiver la mise en pause automatique.Alternatively, autopausing can be disabled.

CoûtCost

  • Le coût d’une base de données serverless correspond à la somme du coût de calcul et du coût de stockage.The cost for a serverless database is the summation of the compute cost and storage cost.
  • Quand l’utilisation du calcul est comprise dans les limites minimales et maximales configurées, le coût du calcul est basé sur le nombre de vCores et la mémoire utilisée.When compute usage is between the min and max limits configured, the compute cost is based on vCore and memory used.
  • Quand l’utilisation du calcul est inférieure à la limite minimale configurée, le coût du calcul est basé sur le nombre minimal de vCores et la mémoire minimale configurée.When compute usage is below the min limits configured, the compute cost is based on the min vCores and min memory configured.
  • Quand la base de données est en pause, le coût du calcul est égal à zéro et seuls les coûts de stockage sont facturés.When the database is paused, the compute cost is zero and only storage costs are incurred.
  • Le coût de stockage est déterminé de la même façon que dans le niveau de calcul provisionné.The storage cost is determined in the same way as in the provisioned compute tier.

Pour plus de détails sur les coûts, consultez Facturation.For more cost details, see Billing.

ScénariosScenarios

Serverless constitue un rapport prix/performance optimisé pour les bases de données uniques avec des modèles d’utilisation intermittents imprévisibles pouvant supporter un délai dans le préchauffage du calcul après des périodes d’inactivité.Serverless is price-performance optimized for single databases with intermittent, unpredictable usage patterns that can afford some delay in compute warm-up after idle usage periods. Par opposition, le niveau de calcul provisionné présente un rapport prix/performance optimisé pour une base de données unique ou plusieurs bases de données dans des pools élastiques avec une utilisation moyenne plus élevée qui ne tolèrent aucun délai lors du préchauffage du calcul.In contrast, the provisioned compute tier is price-performance optimized for single databases or multiple databases in elastic pools with higher average usage that cannot afford any delay in compute warm-up.

Scénarios adaptés au calcul serverlessScenarios well-suited for serverless compute

  • Les bases de données uniques avec des modèles d’utilisation intermittente et imprévisible entrecoupée de périodes d’inactivité, et une utilisation du calcul moyenne moins élevée dans le temps.Single databases with intermittent, unpredictable usage patterns interspersed with periods of inactivity and lower average compute utilization over time.
  • Les bases de données uniques dans le niveau de calcul provisionné qui sont souvent mises à l’échelle et les clients qui préfèrent déléguer la mise à l’échelle du calcul au service.Single databases in the provisioned compute tier that are frequently rescaled and customers who prefer to delegate compute rescaling to the service.
  • Les nouvelles bases de données uniques sans historique d’utilisation où la taille de calcul est difficile ou impossible à estimer avant le déploiement dans SQL Database.New single databases without usage history where compute sizing is difficult or not possible to estimate prior to deployment in SQL Database.

Scénarios adaptés au calcul provisionnéScenarios well-suited for provisioned compute

  • Les bases de données uniques avec des modèles d’utilisation plus régulière et prévisible, et une utilisation du calcul moyenne plus élevée dans le temps.Single databases with more regular, predictable usage patterns and higher average compute utilization over time.
  • Les bases de données qui ne peuvent pas tolérer de compromis sur les performances résultant d’insuffisances de mémoire plus fréquentes ou de délais dans la reprise automatique après un état de mise en pause.Databases that cannot tolerate performance trade-offs resulting from more frequent memory trimming or delay in autoresuming from a paused state.
  • Plusieurs bases de données avec des modèles d’utilisation intermittente et imprévisible qui peuvent être regroupées dans des pools élastiques pour un rapport prix/performances optimisé.Multiple databases with intermittent, unpredictable usage patterns that can be consolidated into elastic pools for better price-performance optimization.

Comparaison avec le niveau de calcul provisionnéComparison with provisioned compute tier

Le tableau suivant résume les différences entre le niveau de calcul serverless et le niveau de calcul provisionné :The following table summarizes distinctions between the serverless compute tier and the provisioned compute tier:

Calcul serverlessServerless compute Calcul provisionnéProvisioned compute
Modèle d’utilisation des bases de donnéesDatabase usage pattern Utilisation intermittente et imprévisible avec une utilisation moyenne du calcul moins élevée dans le temps.Intermittent, unpredictable usage with lower average compute utilization over time. Modèles d’utilisation plus régulière avec une utilisation moyenne du calcul plus élevée dans le temps, ou plusieurs bases de données regroupées dans des pools élastiques.More regular usage patterns with higher average compute utilization over time, or multiple databases using elastic pools.
Effort pour gérer les performances :Performance management effort Moins grandLower Plus grandHigher
Mise à l’échelle du calculCompute scaling AutomatiqueAutomatic ManuelManual
Réactivité du calcul.Compute responsiveness Moins rapide après les périodes d’inactivitéLower after inactive periods ImmédiatImmediate
Mode de facturationBilling granularity À la secondePer second À l’heurePer hour

Modèle d’achat et niveau de servicePurchasing model and service tier

Actuellement, SQL Database serverless est juste pris en charge dans le niveau Usage général sur du matériel de génération 5 dans le modèle d’achat Vcore.SQL Database serverless is currently only supported in the General Purpose tier on Generation 5 hardware in the vCore purchasing model.

Mise à l’échelle automatiqueAutoscaling

Réactivité de la mise à l’échelleScaling responsiveness

En règle générale, les bases de données serverless sont exécutées sur une machine d’une capacité suffisante pour répondre aux besoins en ressources sans interruption, quel que soit le volume de calcul demandé dans les limites définies par le nombre maximal de vCores.In general, serverless databases are run on a machine with sufficient capacity to satisfy resource demand without interruption for any amount of compute requested within limits set by the max vCores value. Parfois, un équilibrage de charge se produit automatiquement si l’ordinateur ne parvient pas à satisfaire les besoins en ressources en quelques minutes.Occasionally, load balancing automatically occurs if the machine is unable to satisfy resource demand within a few minutes. Par exemple, si la demande de ressources est de quatre vCores, mais qu’il y a seulement deux vCores disponibles, un délai de quelques minutes peut être nécessaire pour équilibrer la charge avant de fournir les quatre vCores demandés.For example, if the resource demand is 4 vCores, but only 2 vCores are available, then it may take up to a few minutes to load balance before 4 vCores are provided. La base de données reste en ligne au cours de l’équilibrage de charge, sauf pendant une courte période à la fin de l’opération lorsque les connexions sont supprimées.The database remains online during load balancing except for a brief period at the end of the operation when connections are dropped.

Gestion de la mémoireMemory management

La mémoire pour les bases de données serverless est davantage sollicitée que pour les bases de données de calcul provisionné.Memory for serverless databases is reclaimed more frequently than for provisioned compute databases. Il est important de tenir compte de ce comportement pour maîtriser les coûts dans le niveau serverless et déterminer l’impact sur les performances.This behavior is important to control costs in serverless and can impact performance.

Récupération du cacheCache reclamation

Contrairement aux bases de données de calcul provisionné, la mémoire du cache SQL est sollicitée par une base de données serverless quand l’utilisation du processeur ou du cache actif est faible.Unlike provisioned compute databases, memory from the SQL cache is reclaimed from a serverless database when CPU or active cache utilization is low.

  • L’utilisation du cache actif est considérée comme faible quand la taille totale des dernières entrées du cache utilisées tombe sous un certain seuil pendant une période donnée.Active cache utilization is considered low when the total size of the most recently used cache entries falls below a threshold for a period of time.
  • Quand la récupération du cache est déclenchée, la taille de cache cible est réduite de façon incrémentielle à une fraction de sa taille précédente, et la récupération continue uniquement si l’utilisation reste faible.When cache reclamation is triggered, the target cache size is reduced incrementally to a fraction of its previous size and reclaiming only continues if usage remains low.
  • S’il y a une récupération du cache, la stratégie de sélection des entrées du cache à supprimer est la même que celle utilisée pour les bases de données de calcul provisionné quand la mémoire est fortement sollicitée.When cache reclamation occurs, the policy for selecting cache entries to evict is the same selection policy as for provisioned compute databases when memory pressure is high.
  • La taille du cache n’est jamais réduite en deçà de la limite de mémoire minimale telle que définie par le nombre minimal de vCores configuré, le cas échéant.The cache size is never reduced below the min memory limit as defined by min vCores which can be configured.

Dans les bases de données de niveaux de calcul serverless et provisionné, des entrées de cache peuvent être supprimées si toute la mémoire disponible est utilisée.In both serverless and provisioned compute databases, cache entries may be evicted if all available memory is used.

Notez que lorsque l’utilisation du processeur est faible, l’utilisation du cache actif peut rester élevée en fonction du modèle d’utilisation et empêcher la récupération de la mémoire.Note that when CPU utilization is low, active cache utilization can remain high depending on the usage pattern and prevent memory reclamation. En outre, il peut y avoir un délai supplémentaire après l’arrêt de l’activité de l’utilisateur avant la récupération de la mémoire en raison des processus d’arrière-plan périodiques répondant à l’activité utilisateur précédente.Also, there can be additional delay after user activity stops before memory reclamation occurs due to periodic background processes responding to prior user activity. Par exemple, les opérations de suppression et les tâches de nettoyage QDS génèrent des enregistrements fantômes marqués pour suppression, mais ne sont pas physiquement supprimés tant que le processus de nettoyage des éléments fantômes n’est pas exécuté, ce qui peut impliquer la lecture de pages de données dans le cache.For example, delete operations and QDS cleanup tasks generate ghost records that are marked for deletion, but are not physically deleted until the ghost cleanup process runs which can involve reading data pages into cache.

Alimentation du cacheCache hydration

La taille du cache SQL augmente à mesure que des données sont extraites du disque, de la même manière et au même rythme que pour des bases de données provisionnées.The SQL cache grows as data is fetched from disk in the same way and with the same speed as for provisioned databases. Quand la base de données est occupée, le cache est autorisé à grossir sans contrainte jusqu’à la limite de mémoire maximale.When the database is busy, the cache is allowed to grow unconstrained up to the max memory limit.

Mise en pause automatique et reprise automatiqueAutopausing and autoresuming

Mise en pause automatiqueAutopausing

Une mise en pause automatique est déclenchée si toutes les conditions suivantes sont remplies pendant la durée du délai de mise en pause automatique :Autopausing is triggered if all of the following conditions are true for the duration of the autopause delay:

  • Nombre de sessions = 0Number sessions = 0
  • Processeur = 0 pour la charge de travail utilisateur exécutée dans le pool d’utilisateursCPU = 0 for user workload running in the user pool

Une option permet de désactiver la mise en pause automatique si vous le souhaitez.An option is provided to disable autopausing if desired.

Les fonctionnalités suivantes ne prennent pas en charge la mise en pause automatique, mais prennent en charge la mise à l’échelle automatique.The following features do not support autopausing, but do support auto-scaling. Si l'une des fonctionnalités suivantes est utilisée, la mise en pause automatique doit être désactivée et la base de données reste en ligne quelle que soit sa durée de l'inactivité :If any of the following features are used, then autopausing should be disabled and the database will remain online regardless of the duration of database inactivity:

  • Géoréplication (géoréplication active et groupes de basculement automatique).Geo-replication (active geo-replication and auto-failover groups).
  • Conservation de sauvegardes à long terme (LTR).Long-term backup retention (LTR).
  • Base de données de synchronisation utilisée dans SQL Data Sync. Contrairement aux bases de données de synchronisation, les bases de données de hub et de membres prennent en charge la mise en pause automatique.The sync database used in SQL data sync. Unlike sync databases, hub and member databases support autopausing.
  • Alias DNSDNS aliasing
  • Base de données de travail utilisée dans les travaux élastiques (préversion).The job database used in Elastic Jobs (preview).

La mise en pause automatique est temporairement indisponible durant le déploiement de certaines mises à jour de service pour lesquelles la base de données doit être en ligne.Autopausing is temporarily prevented during the deployment of some service updates which require the database be online. Dans ce cas, la mise en pause automatique est réactivée dès que la mise à jour du service est terminée.In such cases, autopausing becomes allowed again once the service update completes.

Reprise automatiqueAutoresuming

La reprise automatique est déclenchée si l’une des conditions suivantes est remplie à un moment donné :Autoresuming is triggered if any of the following conditions are true at any time:

FonctionnalitéFeature Déclencheur de reprise automatiqueAutoresume trigger
Authentification et autorisationAuthentication and authorization ConnexionLogin
Détection de menacesThreat detection Activation/désactivation des paramètres de détection des menaces au niveau de la base de données ou du serveur.Enabling/disabling threat detection settings at the database or server level.
Modification des paramètres de détection des menaces au niveau de la base de données ou du serveur.Modifying threat detection settings at the database or server level.
Découverte et classification des donnéesData discovery and classification Ajout, modification, suppression ou affichage des étiquettes de sensibilitéAdding, modifying, deleting, or viewing sensitivity labels
AuditAuditing Affichage des enregistrements d’audit.Viewing auditing records.
Mise à jour ou affichage de la stratégie d’audit.Updating or viewing auditing policy.
Masquage de donnéesData masking Ajout, modification, suppression ou affichage des règles de masquage des donnéesAdding, modifying, deleting, or viewing data masking rules
Chiffrement transparent des donnéesTransparent data encryption État d’affichage ou état du chiffrement transparent des donnéesViewing state or status of transparent data encryption
Évaluation des vulnérabilitésVulnerability assessment Analyses ad hoc et analyses périodiques si elles sont activéesAd hoc scans and periodic scans if enabled
Magasin de données des requêtes (performances)Query (performance) data store Modification ou affichage des paramètres du magasin des requêtesModifying or viewing query store settings
Recommandations sur les performancesPerformance recommendations Affichage ou application des recommandations en matière de performancesViewing or applying performance recommendations
Réglage automatiqueAutotuning Application et vérification des recommandations de réglage automatique telles que l’indexation automatiqueApplication and verification of autotuning recommendations such as auto-indexing
Copie de base de donnéesDatabase copying Création d’une base de données comme copie.Create database as copy.
Exportation vers un fichier BACPAC.Export to a BACPAC file.
SQL Data SyncSQL data sync Synchronisation entre les bases de données hub et membre qui s’exécutent selon une planification configurable ou qui sont exécutées manuellementSynchronization between hub and member databases that run on a configurable schedule or are performed manually
Modification de certaines métadonnées de base de donnéesModifying certain database metadata Ajout de nouvelles balises de base de données.Adding new database tags.
Changement du nombre maximal de vCores, du nombre minimal de vCores ou du délai de mise en pause automatique.Changing max vCores, min vCores, or autopause delay.
SQL Server Management Studio (SSMS)SQL Server Management Studio (SSMS) L’utilisation de versions de SSMS antérieures à 18.1 et l’ouverture d’une nouvelle fenêtre de requête pour toute base de données du serveur entraînent la reprise des bases de données du même serveur qui ont été mises en pause automatiquement.Using SSMS versions earlier than 18.1 and opening a new query window for any database in the server will resume any auto-paused database in the same server. Ce comportement ne se produit pas si vous utilisez SSMS version 18.1 ou ultérieure.This behavior does not occur if using SSMS version 18.1 or later.

La surveillance, la gestion ou d'autres solutions permettant d'effectuer l'une des opérations énumérées ci-dessus déclenchent une reprise automatique.Monitoring, management, or other solutions performing any of the operations listed above will trigger auto-resuming.

La reprise automatique est également déclenchée durant le déploiement de certaines mises à jour de service pour lesquelles la base de données doit être en ligne.Autoresuming is also triggered during the deployment of some service updates which require the database be online.

ConnectivitéConnectivity

Si une base de données serverless est mise en pause, la première connexion reprend la base de données et retourne une erreur indiquant que la base de données n’est pas disponible (code d’erreur 40613).If a serverless database is paused, then the first login will resume the database and return an error stating that the database is unavailable with error code 40613. Une fois que la base de données est reprise, la connexion doit être retentée pour établir la connectivité.Once the database is resumed, the login must be retried to establish connectivity. Les clients de base de données avec une logique de nouvelle tentative de connexion n’ont normalement pas besoin d’être modifiés.Database clients with connection retry logic should not need to be modified.

LatenceLatency

La latence pour la reprise automatique d’une base de données serverless est généralement d’environ une minute et pour la mise en pause automatique, entre une et dix minutes.The latency to autoresume and autopause a serverless database is generally order of 1 minute to autoresume and 1-10 minutes to autopause.

Chiffrement transparent des données géré par le client (BYOK)Customer managed transparent data encryption (BYOK)

Si vous utilisez le chiffrement transparent des données géré par le client (BYOK) et que la base de données serverless est mise en pause automatique lors de la suppression ou de la révocation de la clé, la base de données reste dans l’état de pause automatique.If using customer managed transparent data encryption (BYOK) and the serverless database is auto-paused when key deletion or revocation occurs, then the database remains in the auto-paused state. Dans ce cas, après la reprise de la base de données, la base de données devient inaccessible pendant 10 minutes environ.In this case, after the database is next resumed, the database becomes inaccessible within approximately 10 minutes. Une fois que la base de données devient inaccessible, le processus de récupération est le même que pour les bases de données de calcul provisionnées.Once the database becomes inaccessible, the recovery process is the same as for provisioned compute databases. Si la base de données serverless est en ligne lors de la suppression ou de la révocation d’une clé, elle devient également inaccessible après environ 10 minutes, de la même façon qu’avec les bases de données de calcul approvisionnées.If the serverless database is online when key deletion or revocation occurs, then the database also becomes inaccessible within approximately 10 minutes in the same way as with provisioned compute databases.

Intégration au niveau de calcul serverlessOnboarding into serverless compute tier

La création d’une base de données ou le déplacement d’une base de données existante dans un niveau de calcul serverless s’effectuent selon le même modèle que la création d’une base de données dans un niveau de calcul provisionné, et impliquent les deux étapes suivantes.Creating a new database or moving an existing database into a serverless compute tier follows the same pattern as creating a new database in provisioned compute tier and involves the following two steps.

  1. Spécifiez l’objectif de service.Specify the service objective. L’objectif de service précise le niveau de service, la génération du matériel et le nombre maximal de vCores.The service objective prescribes the service tier, hardware generation, and max vCores. Pour connaître les options d’objectif de service, consultez Limites des ressources serverless.For service objective options, see serverless resource limits

  2. Si vous le souhaitez, spécifiez un nombre minimal de vCores et un délai de mise en pause automatique différents des valeurs par défaut.Optionally, specify the min vCores and autopause delay to change their default values. Le tableau suivant présente les valeurs disponibles pour ces paramètres.The following table shows the available values for these parameters.

    ParamètreParameter Choix des valeursValue choices Valeur par défautDefault value
    Nombre minimal de vCoresMin vCores Dépend du nombre maximal de vCores configuré. Voir Limites des ressources.Depends on max vCores configured - see resource limits. 0,5 vCore0.5 vCores
    Délai de la mise en pause automatiqueAutopause delay Minimum : 60 minutes (1 heure)Minimum: 60 minutes (1 hour)
    Maximum : 10 080 minutes (7 jours)Maximum: 10080 minutes (7 days)
    Incréments : 10 minutesIncrements: 10 minutes
    Désactiver la mise en pause automatique  -1Disable autopause: -1
    60 minutes60 minutes

Créer une base de données dans le niveau de calcul serverlessCreate a new database in the serverless compute tier

Les exemples suivants créent une base de données au niveau de calcul serverless.The following examples create a new database in the serverless compute tier.

Utilisation du portail AzureUse the Azure portal

Consultez Démarrage rapide : Créez une base de données unique dans Azure SQL Database à l’aide du portail Azure.See Quickstart: Create a single database in Azure SQL Database using the Azure portal.

Utiliser PowerShellUse PowerShell

New-AzSqlDatabase -ResourceGroupName $resourceGroupName -ServerName $serverName -DatabaseName $databaseName `
  -ComputeModel Serverless -Edition GeneralPurpose -ComputeGeneration Gen5 `
  -MinVcore 0.5 -MaxVcore 2 -AutoPauseDelayInMinutes 720

Utilisation de l’interface de ligne de commande Microsoft AzureUse the Azure CLI

az sql db create -g $resourceGroupName -s $serverName -n $databaseName `
  -e GeneralPurpose -f Gen5 --min-capacity 0.5 -c 2 --compute-model Serverless --auto-pause-delay 720

Utiliser Transact-SQL (T-SQL)Use Transact-SQL (T-SQL)

Lors de l’utilisation de T-SQL, les valeurs par défaut sont appliquées au vCores min. et au délai de la mise en pause automatique.When using T-SQL, default values are applied for the min vcores and autopause delay.

CREATE DATABASE testdb
( EDITION = 'GeneralPurpose', SERVICE_OBJECTIVE = 'GP_S_Gen5_1' ) ;

Pour plus d’informations, consultez CREATE DATABASE.For details, see CREATE DATABASE.

Déplacer une base de données du niveau de calcul provisionné vers le niveau de calcul serverlessMove a database from the provisioned compute tier into the serverless compute tier

Les exemples suivants déplacent une base de données du niveau de calcul approvisionné vers le niveau de calcul serverless.The following examples move a database from the provisioned compute tier into the serverless compute tier.

Utiliser PowerShellUse PowerShell

Set-AzSqlDatabase -ResourceGroupName $resourceGroupName -ServerName $serverName -DatabaseName $databaseName `
  -Edition GeneralPurpose -ComputeModel Serverless -ComputeGeneration Gen5 `
  -MinVcore 1 -MaxVcore 4 -AutoPauseDelayInMinutes 1440

Utilisation de l’interface de ligne de commande Microsoft AzureUse the Azure CLI

az sql db update -g $resourceGroupName -s $serverName -n $databaseName `
  --edition GeneralPurpose --min-capacity 1 --capacity 4 --family Gen5 --compute-model Serverless --auto-pause-delay 1440

Utiliser Transact-SQL (T-SQL)Use Transact-SQL (T-SQL)

Lors de l’utilisation de T-SQL, les valeurs par défaut sont appliquées au vCores min. et au délai de la mise en pause automatique.When using T-SQL, default values are applied for the min vcores and autopause delay.

ALTER DATABASE testdb 
MODIFY ( SERVICE_OBJECTIVE = 'GP_S_Gen5_1') ;

Pour plus d’informations, consultez ALTER DATABASE.For details, see ALTER DATABASE.

Déplacer une base de données du niveau de calcul serverless vers le niveau de calcul provisionnéMove a database from the serverless compute tier into the provisioned compute tier

Vous pouvez déplacer une base de données serverless dans un niveau de calcul provisionné de la même façon que lorsque vous déplacez une base de données de calcul provisionné dans un niveau de calcul serverless.A serverless database can be moved into a provisioned compute tier in the same way as moving a provisioned compute database into a serverless compute tier.

Modifier la configuration serverlessModifying serverless configuration

Utiliser PowerShellUse PowerShell

Pour modifier le nombre maximal ou minimal de vCores et le délai de mise en pause automatique, utilisez la commande Set-AzSqlDatabase dans PowerShell à l’aide des arguments MaxVcore, MinVcore et AutoPauseDelayInMinutes.Modifying the maximum or minimum vCores, and autopause delay, is performed by using the Set-AzSqlDatabase command in PowerShell using the MaxVcore, MinVcore, and AutoPauseDelayInMinutes arguments.

Utilisation de l’interface de ligne de commande Microsoft AzureUse the Azure CLI

Pour modifier le nombre maximal ou minimal de vCores et le délai de mise en pause automatique, utilisez la commande az sql db update dans Azure CLI à l’aide des arguments capacity, min-capacity et auto-pause-delay.Modifying the maximum or minimum vCores, and autopause delay, is performed by using the az sql db update command in Azure CLI using the capacity, min-capacity, and auto-pause-delay arguments.

SurveillanceMonitoring

Ressources utilisées et facturéesResources used and billed

Les ressources d’une base de données serverless sont encapsulées par le package d’application, l’instance SQL et les entités du pool de ressources utilisateur.The resources of a serverless database are encapsulated by app package, SQL instance, and user resource pool entities.

Package d’applicationApp package

Le package d’application représente le maximum en termes de gestion des ressources d’une base de données, que celle-ci soit dans un niveau de calcul serverless ou provisionné.The app package is the outer most resource management boundary for a database, regardless of whether the database is in a serverless or provisioned compute tier. Le package d’application contient l’instance SQL et les services externes qui comprennent ensemble toutes les ressources utilisateur et système utilisées par une base de données dans SQL Database.The app package contains the SQL instance and external services that together scope all user and system resources used by a database in SQL Database. Comme services externes, citons par exemple R et la recherche en texte intégral.Examples of external services include R and full-text search. En règle générale, l’instance SQL domine l’utilisation globale des ressources sur le package d’application.The SQL instance generally dominates the overall resource utilization across the app package.

Pool de ressources utilisateurUser resource pool

Le pool de ressources utilisateur représente le minimum en termes de gestion des ressources d’une base de données, que celle-ci soit dans un niveau de calcul serverless ou provisionné.The user resource pool is the inner most resource management boundary for a database, regardless of whether the database is in a serverless or provisioned compute tier. Le pool de ressources utilisateur comprend le processeur et les E/S de la charge de travail utilisateur générée par les requêtes DDL comme CREATE et ALTER, et par les requêtes DML comme SELECT, INSERT, UPDATE et DELETE.The user resource pool scopes CPU and IO for user workload generated by DDL queries such as CREATE and ALTER and DML queries such as SELECT, INSERT, UPDATE, and DELETE. Ces requêtes représentent généralement la proportion la plus importante de l’utilisation dans le package d’application.These queries generally represent the most substantial proportion of utilization within the app package.

MesuresMetrics

Les métriques de supervision de l’utilisation des ressources du package d’application et du pool d’utilisateurs d’une base de données serverless sont listées dans le tableau suivant :Metrics for monitoring the resource usage of the app package and user pool of a serverless database are listed in the following table:

EntitéEntity MétriqueMetric DescriptionDescription UnitsUnits
Package d’applicationApp package app_cpu_percentapp_cpu_percent Pourcentage de vCores utilisés par l’application par rapport au nombre maximal de vCores autorisé pour l’application.Percentage of vCores used by the app relative to max vCores allowed for the app. PourcentagePercentage
Package d’applicationApp package app_cpu_billedapp_cpu_billed Volume de calcul facturé pour l’application pendant la période de rapport.The amount of compute billed for the app during the reporting period. Le montant payé pendant cette période est le produit de cette métrique et du prix unitaire d’un vCore.The amount paid during this period is the product of this metric and the vCore unit price.

Les valeurs de cette métrique sont déterminées par l’agrégation de la quantité maximale du processeur utilisé et de la mémoire utilisée par seconde.Values of this metric are determined by aggregating over time the maximum of CPU used and memory used each second. Si la quantité utilisée est inférieure à la quantité minimale provisionnée tel que définie par le nombre minimal de vCores et la mémoire minimum, la quantité minimale provisionnée est facturée.If the amount used is less than the minimum amount provisioned as set by the min vCores and min memory, then the minimum amount provisioned is billed. Pour comparer le processeur à la mémoire à des fins de facturation, la mémoire est normalisée en unités de vCores en remettant à l’échelle la quantité de mémoire en Go à 3 Go par vCore. In order to compare CPU with memory for billing purposes, memory is normalized into units of vCores by rescaling the amount of memory in GB by 3 GB per vCore.
Secondes de vCorevCore seconds
Package d’applicationApp package app_memory_percentapp_memory_percent Pourcentage de mémoire utilisée par l’application par rapport à la mémoire maximale autorisée pour l’application.Percentage of memory used by the app relative to max memory allowed for the app. PourcentagePercentage
Pool utilisateurUser pool cpu_percentcpu_percent Pourcentage de vCores utilisés par la charge de travail utilisateur par rapport au nombre maximal de vCores autorisé pour la charge de travail utilisateur.Percentage of vCores used by user workload relative to max vCores allowed for user workload. PourcentagePercentage
Pool utilisateurUser pool data_IO_percentdata_IO_percent Pourcentage d’IOPS de données utilisées par la charge de travail utilisateur par rapport au nombre maximal d’IOPS de données autorisé pour la charge de travail utilisateur.Percentage of data IOPS used by user workload relative to max data IOPS allowed for user workload. PourcentagePercentage
Pool utilisateurUser pool log_IO_percentlog_IO_percent Pourcentage de Mo/s de journal utilisés par la charge de travail utilisateur par rapport au nombre maximal de Mo/s de journal autorisé pour la charge de travail utilisateur.Percentage of log MB/s used by user workload relative to max log MB/s allowed for user workload. PourcentagePercentage
Pool utilisateurUser pool workers_percentworkers_percent Pourcentage de workers utilisés par la charge de travail utilisateur par rapport au nombre maximal de workers autorisé pour la charge de travail utilisateur.Percentage of workers used by user workload relative to max workers allowed for user workload. PourcentagePercentage
Pool utilisateurUser pool sessions_percentsessions_percent Pourcentage de session utilisées par la charge de travail utilisateur par rapport au nombre maximal de sessions autorisé pour la charge de travail utilisateur.Percentage of sessions used by user workload relative to max sessions allowed for user workload. PourcentagePercentage

État de mise en pause et de reprisePause and resume status

Dans le portail Azure, l’état de la base de données est affiché dans le volet Vue d’ensemble du serveur qui liste les bases de données qu’il contient.In the Azure portal, the database status is displayed in the overview pane of the server that lists the databases it contains. L’état de la base de données est également affiché dans le volet Vue d’ensemble de la base de données.The database status is also displayed in the overview pane for the database.

Utilisation des commandes suivantes pour interroger l'état de mise en pause et de reprise d'une base de données :Using the following commands to query the pause and resume status of a database:

Utiliser PowerShellUse PowerShell

Get-AzSqlDatabase -ResourceGroupName $resourcegroupname -ServerName $servername -DatabaseName $databasename `
  | Select -ExpandProperty "Status"

Utilisation de l’interface de ligne de commande Microsoft AzureUse the Azure CLI

az sql db show --name $databasename --resource-group $resourcegroupname --server $servername --query 'status' -o json

Limites des ressourcesResource limits

Pour connaître les limites de ressources, consultez Niveau de calcul serverless.For resource limits, see serverless compute tier.

FacturationBilling

Le volume de calcul facturé correspond à la quantité maximale de processeur et de mémoire utilisée par seconde.The amount of compute billed is the maximum of CPU used and memory used each second. Si la quantité de processeur et de mémoire utilisée est inférieure à la quantité minimale provisionnée pour chaque, la quantité provisionnée est facturée.If the amount of CPU used and memory used is less than the minimum amount provisioned for each, then the provisioned amount is billed. Pour comparer le processeur à la mémoire à des fins de facturation, la mémoire est normalisée en unités de vCores en remettant à l’échelle la quantité de mémoire en Go à 3 Go par vCore.In order to compare CPU with memory for billing purposes, memory is normalized into units of vCores by rescaling the amount of memory in GB by 3 GB per vCore.

  • Ressource facturée : Processeur et mémoireResource billed: CPU and memory
  • Montant facturé  : prix unitaire d’un vCore * max (vCores min, vCores utilisés, mémoire min Go * 1/3, mémoire Go utilisée * 1/3)Amount billed: vCore unit price * max (min vCores, vCores used, min memory GB * 1/3, memory GB used * 1/3)
  • Fréquence de facturation : À la secondeBilling frequency: Per second

Prix unitaire d’un vCore est le coût par vCore par seconde.The vCore unit price is the cost per vCore per second. Reportez-vous à la page des prix Azure SQL Database pour connaître les prix à l’unité d’une région donnée.Refer to the Azure SQL Database pricing page for specific unit prices in a given region.

Le volume de calcul facturé est exposé par les métriques suivantes :The amount of compute billed is exposed by the following metric:

  • Métrique : app_cpu_billed (secondes de vCore)Metric: app_cpu_billed (vCore seconds)
  • Définition : max (vCores min, vCores utilisés, mémoire min Go * 1/3, mémoire Go utilisée * 1/3)Definition: max (min vCores, vCores used, min memory GB * 1/3, memory GB used * 1/3)
  • Fréquence de reporting : Par minuteReporting frequency: Per minute

Cette quantité est calculée chaque seconde et agrégée sur 1 minute.This quantity is calculated each second and aggregated over 1 minute.

Facturation minimale du calculMinimum compute bill

Si une base de données serverless est suspendue, la facturation du calcul est égale à zéro.If a serverless database is paused, then the compute bill is zero. Dans le cas contraire, la facturation minimale du calcul n’est pas inférieure à la quantité de vCore basée sur max (min vCore, min mémoire en Go × ⅓).If a serverless database is not paused, then the minimum compute bill is no less than the amount of vCores based on max (min vCores, min memory GB * 1/3).

Exemples :Examples:

  • Prenons une base de données serverless non suspendue et configurée avec 8 vCore maximum et 1 vCore minimum, correspondant à 3,0 Go de mémoire minimum.Suppose a serverless database is not paused and configured with 8 max vCores and 1 min vCore corresponding to 3.0 GB min memory. La facturation minimale du calcul se base alors sur max (1 vCore, 3,0 Go × 1 vCore/3 Go) = 1 vCore.Then the minimum compute bill is based on max (1 vCore, 3.0 GB * 1 vCore / 3 GB) = 1 vCore.
  • Prenons une base de données serverless non suspendue et configurée avec 4 vCore maximum et 0,5 vCore minimum, correspondant à 2,1 Go de mémoire minimum.Suppose a serverless database is not paused and configured with 4 max vCores and 0.5 min vCores corresponding to 2.1 GB min memory. La facturation minimale du calcul se base alors sur max (0,5 vCore, 2,1 Go × 1 vCore/3 Go) = 0,7 vCore.Then the minimum compute bill is based on max (0.5 vCores, 2.1 GB * 1 vCore / 3 GB) = 0.7 vCores.

La Calculatrice de prix Azure SQL Database pour le serverless peut aider à déterminer la mémoire minimale configurable en fonction du nombre maximal et minimal de vCore configurés.The Azure SQL Database pricing calculator for serverless can be used to determine the min memory configurable based on the number of max and min vCores configured. En règle générale, si le nombre minimal de vCore configuré est supérieur à 0,5 vCore, la facturation minimale du calcul est indépendante de la mémoire minimale configurée et se base uniquement sur le nombre minimal de vCore configurés.As a rule, if the min vCores configured is greater than 0.5 vCores, then the minimum compute bill is independent of the min memory configured and based only on the number of min vCores configured.

Exemple de scénarioExample scenario

Prenons l’exemple d’une base de données serverless configurée avec 1 vCore min et 4 vCores max.Consider a serverless database configured with 1 min vCore and 4 max vCores. Cela représente environ 3 Go de mémoire min et 12 Go de mémoire max.This corresponds to around 3 GB min memory and 12-GB max memory. Supposons que le délai de mise en pause automatique est défini à six heures et que la charge de travail de la base de données est active durant les deux premières heures d’une période de 24 heures, mais qu’elle reste inactive le reste du temps.Suppose the auto-pause delay is set to 6 hours and the database workload is active during the first 2 hours of a 24-hour period and otherwise inactive.

Dans ce cas de figure, la base de données est facturée pour le calcul et le stockage pendant les huit premières heures.In this case, the database is billed for compute and storage during the first 8 hours. Même si la base de données devient inactive après la deuxième heure, elle continue d’être facturée pour le calcul durant les six heures suivantes, selon le calcul minimal provisionné quand la base de données est en ligne.Even though the database is inactive starting after the second hour, it is still billed for compute in the subsequent 6 hours based on the minimum compute provisioned while the database is online. Seul le stockage est facturé pendant le reste de la période de 24 heures où la base de données est mise en pause.Only storage is billed during the remainder of the 24-hour period while the database is paused.

Plus précisément, les coûts de calcul dans cet exemple sont calculés de la façon suivante :More precisely, the compute bill in this example is calculated as follows:

Intervalle de tempsTime Interval vCores utilisés par secondevCores used each second Go utilisés par secondeGB used each second Dimension de calcul facturéeCompute dimension billed Secondes de vCore facturées dans l’intervalle de tempsvCore seconds billed over time interval
0:00-1:000:00-1:00 44 99 vCores utilisésvCores used 4 vCores * 3 600 secondes = 14 400 secondes de vCore4 vCores * 3600 seconds = 14400 vCore seconds
1:00-2:001:00-2:00 11 1212 Mémoire utiliséeMemory used 12 GB * 1/3 * 3 600 secondes = 14 400 secondes de vCore12 GB * 1/3 * 3600 seconds = 14400 vCore seconds
2:00-8:002:00-8:00 00 00 Mémoire minimale provisionnéeMin memory provisioned 3 GB * 1/3 * 21 600 secondes = 21 600 secondes de vCore3 GB * 1/3 * 21600 seconds = 21600 vCore seconds
8:00-24:008:00-24:00 00 00 Aucun calcul facturé pendant la mise en pauseNo compute billed while paused 0 seconde de vCore0 vCore seconds
Total de secondes de vCore facturées sur 24 heuresTotal vCore seconds billed over 24 hours 50 400 secondes de vCore50400 vCore seconds

Supposons que le prix de l’unité Compute est 0,000145 $/vCore/seconde.Suppose the compute unit price is $0.000145/vCore/second. Le calcul facturé sur cette période de 24 heures est le produit du prix de l’unité Compute par le nombre de secondes de vCore facturées : 0,000145 $/vCore/seconde * 50 400 secondes de vCore ~ 7,31 $Then the compute billed for this 24-hour period is the product of the compute unit price and vCore seconds billed: $0.000145/vCore/second * 50400 vCore seconds ~ $7.31

Azure Hybrid Benefit et capacité réservéeAzure Hybrid Benefit and reserved capacity

Les remises liées à Azure Hybrid Benefit et aux capacités réservées ne s’appliquent pas au niveau du calcul serverless.Azure Hybrid Benefit (AHB) and reserved capacity discounts do not apply to the serverless compute tier.

Régions disponiblesAvailable regions

Le niveau de calcul serverless est disponible partout dans le monde, sauf dans les régions suivantes : Chine Est, Chine Nord, Allemagne Centre, Allemagne Nord-Est et US Gov Centre (Iowa).The serverless compute tier is available worldwide except the following regions: China East, China North, Germany Central, Germany Northeast, and US Gov Central (Iowa).

Étapes suivantesNext steps