Бессерверные вычисления в Базе данных SQL AzureAzure SQL Database serverless

Сервер базы данных SQL Azure — это уровень вычислений для отдельных баз данных, который автоматически масштабирует вычисление на основе потребностей рабочей нагрузки и выставляет счета за количество вычислений, используемых в секунду.Azure SQL Database serverless is a compute tier for single databases that automatically scales compute based on workload demand and bills for the amount of compute used per second. Уровень вычислений "бессерверный" также автоматически приостанавливает базы данных в течение неактивных периодов, когда оплачивается только хранилище и автоматически возобновляет базы данных при возврате действия.The serverless compute tier also automatically pauses databases during inactive periods when only storage is billed and automatically resumes databases when activity returns.

Уровень бессерверных вычисленийServerless compute tier

Независимый от сервера уровень вычислений для отдельной базы данных параметризован диапазоном автоматического масштабирования вычислений и задержкой приостановки.The serverless compute tier for a single database is parameterized by a compute autoscaling range and an autopause delay. Конфигурация этих параметров определяет производительность базы данных и стоимость вычислений.The configuration of these parameters shape the database performance experience and compute cost.

Выставление счетов за бессерверные вычисления

Конфигурация производительностиPerformance configuration

  • Минимальный виртуальных ядер и максимальный виртуальных ядер являются настраиваемыми параметрами, определяющими диапазон ресурсов вычислений, доступных для базы данных.The minimum vCores and maximum vCores are configurable parameters that define the range of compute capacity available for the database. Ограничения памяти и операций ввода-вывода пропорциональны указанному диапазону виртуальных ядер.Memory and IO limits are proportional to the vCore range specified.
  • Задержка автоматической паузы — это настраиваемый параметр, определяющий период времени, в течение которого база данных должна быть неактивна, прежде чем она будет автоматически приостановлена.The autopause delay is a configurable parameter that defines the period of time the database must be inactive before it is automatically paused. База данных автоматически возобновляется при следующем входе или выполнении другого действия.The database is automatically resumed when the next login or other activity occurs. Кроме того, можно отключить приостановку.Alternatively, autopausing can be disabled.

ЗатратыCost

  • Затраты на бессерверную базу данных — это совокупность стоимости вычислений и затрат на хранение.The cost for a serverless database is the summation of the compute cost and storage cost.
  • При использовании вычислений между минимальным и максимальным ограничениями Расчетная стоимость основана на виртуальное ядро и используемой памяти.When compute usage is between the min and max limits configured, the compute cost is based on vCore and memory used.
  • Если использование вычислений ниже минимальных установленных ограничений, затраты на вычисление основываются на параметре min виртуальных ядер и min memory.When compute usage is below the min limits configured, the compute cost is based on the min vCores and min memory configured.
  • При приостановке базы данных стоимость вычислений будет равна нулю, а только затраты на хранение.When the database is paused, the compute cost is zero and only storage costs are incurred.
  • Стоимость хранилища определяется так же, как и в подготовленном уровне вычислений.The storage cost is determined in the same way as in the provisioned compute tier.

Дополнительные сведения о затратах см. в разделе выставление счетов.For more cost details, see Billing.

СценарииScenarios

Бессерверные вычисления — это рентабельное и оптимизированное для высокой производительности решение для отдельных баз данных с нестабильным и непредсказуемым использованием, для которых допустима некоторая задержка при подготовке вычислительных ресурсов после периодов простоя.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. Подготовленный уровень вычислений, напротив, оптимизирован на производительность для отдельных баз данных или нескольких баз данных в эластичных пулах с более высоким средним использованием, что не может позволить какие-либо задержки в выпуске вычислений.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.

Сценарии использования бессерверных вычисленийScenarios well-suited for serverless compute

  • Отдельные базы данных с временными, непредсказуемыми шаблонами использования, направленными на периоды бездействия и снижения среднего использования вычислений с течением времени.Single databases with intermittent, unpredictable usage patterns interspersed with periods of inactivity and lower average compute utilization over time.
  • Отдельные базы данных на подготовленном уровне вычислений, которые часто масштабируются повторно, и клиенты, предпочитающие делегировать перемасштабирование вычислений в службу.Single databases in the provisioned compute tier that are frequently rescaled and customers who prefer to delegate compute rescaling to the service.
  • Новые одиночные базы данных без журнала использования, где размер вычислений сложно или невозможно оценить до развертывания в базе данных SQL.New single databases without usage history where compute sizing is difficult or not possible to estimate prior to deployment in SQL Database.

Сценарии использования подготовленных вычисленийScenarios well-suited for provisioned compute

  • Отдельные базы данных с более обычными прогнозируемыми шаблонами использования и высокой средней степенью использования вычислений с течением времени.Single databases with more regular, predictable usage patterns and higher average compute utilization over time.
  • Базы данных, для которых недопустимо снижение производительности за счет частого ограничения ресурсов памяти или задержек автоматического возобновления работы из приостановленного состояния.Databases that cannot tolerate performance trade-offs resulting from more frequent memory trimming or delay in autoresuming from a paused state.
  • Несколько баз данных с временными, непредсказуемыми шаблонами использования, которые можно консолидировать в эластичные пулы для лучшей оптимизации по ценам.Multiple databases with intermittent, unpredictable usage patterns that can be consolidated into elastic pools for better price-performance optimization.

Сравнение с уровнем подготовленных вычисленийComparison with provisioned compute tier

В следующей таблице перечислены различия между уровнями бессерверных вычислений и подготовленных вычислений:The following table summarizes distinctions between the serverless compute tier and the provisioned compute tier:

Бессерверные вычисленияServerless compute Подготовленные вычисленияProvisioned compute
Шаблон использования базы данныхDatabase usage pattern Нерегулярное, непредсказуемое использование с более низким средним использованием вычислений с течением времени.Intermittent, unpredictable usage with lower average compute utilization over time. Более обычные шаблоны использования с более высоким средним использованием вычислений за определенный период времени или несколько баз данных, использующих эластичные пулы.More regular usage patterns with higher average compute utilization over time, or multiple databases using elastic pools.
Затраты на управление производительностьюPerformance management effort НизкиеLower ВысокиеHigher
Масштабирование вычислительных ресурсовCompute scaling АвтоматическиAutomatic ManualManual
Скорость включения вычислительных ресурсовCompute responsiveness Низкая после периодов бездействияLower after inactive periods НемедленноImmediate
ТарификацияBilling granularity посекундно.Per second В часPer hour

Модель приобретения и уровень службPurchasing model and service tier

Бессерверная База данных SQL сейчас поддерживается только на уровне общего назначения платформы 5-го поколения в рамках модели приобретения виртуальных ядер.SQL Database serverless is currently only supported in the General Purpose tier on Generation 5 hardware in the vCore purchasing model.

АвтомасштабированиеAutoscaling

Скорость масштабированияScaling responsiveness

В целом, бессерверные базы данных запускаются на компьютере с достаточной емкостью для удовлетворения спроса на ресурсы без прерывания для любого количества запрошенных вычислений в пределах ограничений, заданных максимальным значением виртуальных ядер.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. В некоторых случаях автоматически выполняется балансировка нагрузки, если компьютер не может удовлетворить потребность в ресурсах в течение нескольких минут.Occasionally, load balancing automatically occurs if the machine is unable to satisfy resource demand within a few minutes. Например, если потребность в ресурсах равна 4 виртуальных ядер, но доступно только 2 виртуальных ядер, то для балансировки нагрузки до 4 виртуальных ядер может потребоваться до нескольких минут.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. База данных остается доступной по сети во время балансировки нагрузки, кроме непродолжительного периода в конце операции, когда подключение прерывается.The database remains online during load balancing except for a brief period at the end of the operation when connections are dropped.

Управление памятьюMemory management

Память для бессерверных баз данных освобождается чаще, чем для подготовленных вычислений баз данных.Memory for serverless databases is reclaimed more frequently than for provisioned compute databases. Такое поведение важно для управления затратами на бессерверные и может повлиять на производительность.This behavior is important to control costs in serverless and can impact performance.

Освобождение кэшаCache reclamation

В отличие от подготовленных вычислительных баз данных, память из кэша SQL высвобождается из базы данных, не предназначенной для сервера, если загрузка ЦП или кэширования мала.Unlike provisioned compute databases, memory from the SQL cache is reclaimed from a serverless database when CPU or cache utilization is low.

  • Использование кэша считается низким, если общий размер последних использованных записей кэша падает ниже порогового значения в течение определенного периода времени.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.
  • При активации реорганизации кэша целевой размер кэша уменьшается постепенно до доли предыдущего размера и освобождается, только если использование остается низким.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.
  • При возникновении ревосстановления кэша политика выбора записей кэша будет той же, что и для подготовленных баз данных вычислений, когда интенсивность памяти высока.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.
  • Размер кэша никогда не уменьшается ниже ограничения min memory, как определено в параметре min виртуальных ядер, который можно настроить.The cache size is never reduced below the min memory limit as defined by min vCores which can be configured.

В бессерверных и подготовленных базах данных вычислений записи кэша могут быть вытеснены, если используется вся доступная память.In both serverless and provisioned compute databases, cache entries may be evicted if all available memory is used.

Расконсервации кэшаCache hydration

Кэш SQL растет по мере того, как данные извлекаться с диска таким же образом и с той же скоростью, что и для подготовленных баз данных.The SQL cache grows as data is fetched from disk in the same way and with the same speed as for provisioned databases. Когда база данных занята, размер кэша может увеличиваться в неограниченном объеме до максимального предела памяти.When the database is busy, the cache is allowed to grow unconstrained up to the max memory limit.

Приостановка и возобновлениеAutopausing and autoresuming

ПриостановкаAutopausing

Приостановка активируется, если в течение задержки приостановки выполняются все перечисленные ниже условия.Autopausing is triggered if all of the following conditions are true for the duration of the autopause delay:

  • количество сеансов — 0;Number sessions = 0
  • ЦП = 0 для рабочей нагрузки пользователя, выполняемой в пуле пользователейCPU = 0 for user workload running in the user pool

Для отключения приостановки при необходимости можно указать параметр.An option is provided to disable autopausing if desired.

Следующие функции не поддерживают приостановку.The following features do not support autopausing. То есть, если используются какие-либо из следующих компонентов, база данных остается в режиме «в сети» независимо от длительности бездействия базы данных:That is, if any of the following features are used, then the database remains online regardless of the duration of database inactivity:

  • Георепликация (активная Георепликация и группы автоматической отработки отказа).Geo-replication (active geo-replication and auto-failover groups).
  • Долгосрочное хранение резервных копий (LTR).Long-term backup retention (LTR).
  • База данных синхронизации, используемая в синхронизации данных SQL. В отличие от баз данных синхронизации, концентраторы и базы данных-члены поддерживают автоматическую приостановку.The sync database used in SQL data sync. Unlike sync databases, hub and member databases support autopausing.
  • База данных заданий, используемая в заданиях обработки эластичных БД.The job database used in elastic jobs.

Приостановка в ходе развертывания некоторых обновлений службы временно запрещается, что требует, чтобы база данных была в сети.Autopausing is temporarily prevented during the deployment of some service updates which require the database be online. В таких случаях после завершения обновления службы приостановка станет разрешенной.In such cases, autopausing becomes allowed again once the service update completes.

ВозобновлениеAutoresuming

Возобновление активируется, если в любое время выполняется одно из следующих условий:Autoresuming is triggered if any of the following conditions are true at any time:

ФункцияFeature Триггер автоматического возобновленияAutoresume trigger
Проверка подлинности и авторизацияAuthentication and authorization ВходLogin
Обнаружение угрозThreat detection Включение и отключение параметров обнаружения угроз на уровне базы данных или сервера.Enabling/disabling threat detection settings at the database or server level.
Изменение параметров обнаружения угроз на уровне базы данных или сервера.Modifying threat detection settings at the database or server level.
Обнаружение и классификация данныхData discovery and classification Добавление, изменение, удаление или просмотр меток конфиденциальности.Adding, modifying, deleting, or viewing sensitivity labels
АудитAuditing Просмотр записей аудита.Viewing auditing records.
Обновление или просмотр политики аудита.Updating or viewing auditing policy.
Маскирование данныхData masking Добавление, изменение, удаление или просмотр правил маскирования данных.Adding, modifying, deleting, or viewing data masking rules
Прозрачное шифрование данныхTransparent data encryption Просмотр состояния прозрачного шифрования данных.View state or status of transparent data encryption
Запросы к хранилищу данных (производительность)Query (performance) data store Изменение или Просмотр параметров хранилища запросовModifying or viewing query store settings
Автоматическая настройкаAutotuning Применение и проверка рекомендаций по автоматической настройке, включая автоматическое индексирование.Application and verification of autotuning recommendations such as auto-indexing
Копирование базы данныхDatabase copying Создать базу данных как копию.Create database as copy.
Экспорт в BACPAC-файл.Export to a BACPAC file.
Синхронизация данных SQLSQL data sync Синхронизация между центральной и рядовыми базами данных, которая запускается по настраиваемому расписанию или вручную.Synchronization between hub and member databases that run on a configurable schedule or are performed manually
Изменение некоторых метаданных базы данныхModifying certain database metadata Добавление новых тегов базы данных.Adding new database tags.
Изменение Max виртуальных ядер, min виртуальных ядер или задержка приостановки.Changing max vCores, min vCores, or autopause delay.
SQL Server Management Studio (SSMS)SQL Server Management Studio (SSMS) Использование SSMS версий, предшествующих 18,1, и открытие нового окна запроса для любой базы данных на сервере приведет к возобновлению работы любой базы данных, приостановленной на том же сервере.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. Такое поведение не возникает при использовании SSMS версии 18,1 или более поздней.This behavior does not occur if using SSMS version 18.1 or later.

Возобновление также запускается во время развертывания некоторых обновлений службы, требующих, чтобы база данных была в сети.Autoresuming is also triggered during the deployment of some service updates which require the database be online.

ПодключениеConnectivity

Если база данных без сервера приостанавливается, то первое имя входа возобновляет базу данных и возвращает сообщение об ошибке, сообщающее, что база данных недоступна, код ошибки 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. Когда работа базы данных будет возобновлена, нужно повторно выполнить вход, чтобы установить подключение.Once the database is resumed, the login must be retried to establish connectivity. Клиенты базы данных, для которых поддерживается логика повторных попыток подключения, не нужно изменять.Database clients with connection retry logic should not need to be modified.

ЗадержкаLatency

Задержка для возобновления и приостановки серверной базы данных обычно составляет 1 минуту для автовосстановления и 1-10 минут для приостановки.The latency to autoresume and autopause a serverless database is generally order of 1 minute to autoresume and 1-10 minutes to autopause.

Переход на бессерверный уровень вычисленийOnboarding into serverless compute tier

Создание новой базы данных или перемещение существующей базы данных на серверный уровень вычислений следует той же схеме, что и при создании новой базы данных на подготовленном уровне вычислений, и включает в себя следующие два шага.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. Определение описательного имени службы.Specify the service objective name. Цель службы предписывает уровень служб, поколение оборудования и максимальное виртуальных ядер.The service objective prescribes the service tier, hardware generation, and max vCores. В таблице ниже приведены возможные варианты.The following table shows the service objective options:

    Описательное имя службыService objective name Уровень службService tier Поколение оборудованияHardware generation Максимальное число виртуальных ядерMax vCores
    GP_S_Gen5_1GP_S_Gen5_1 УниверсальныеGeneral Purpose 5-е поколениеGen5 11
    GP_S_Gen5_2GP_S_Gen5_2 УниверсальныеGeneral Purpose 5-е поколениеGen5 22
    GP_S_Gen5_4GP_S_Gen5_4 УниверсальныеGeneral Purpose 5-е поколениеGen5 44
    GP_S_Gen5_6GP_S_Gen5_6 УниверсальныеGeneral Purpose 5-е поколениеGen5 66
    GP_S_Gen5_8GP_S_Gen5_8 УниверсальныеGeneral Purpose 5-е поколениеGen5 88
    GP_S_Gen5_10GP_S_Gen5_10 УниверсальныеGeneral Purpose 5-е поколениеGen5 1010
    GP_S_Gen5_12GP_S_Gen5_12 УниверсальныеGeneral Purpose 5-е поколениеGen5 1212
    GP_S_Gen5_14GP_S_Gen5_14 УниверсальныеGeneral Purpose 5-е поколениеGen5 1414
    GP_S_Gen5_16GP_S_Gen5_16 УниверсальныеGeneral Purpose 5-е поколениеGen5 1616
  2. При необходимости укажите минимальное виртуальных ядер и задержку приостановки, чтобы изменить значения по умолчанию.Optionally, specify the min vCores and autopause delay to change their default values. В таблице ниже показаны доступные значения для этих параметров.The following table shows the available values for these parameters.

    ПараметрParameter Варианты значенийValue choices Значение по умолчаниюDefault value
    Min виртуальных ядерMin vCores Зависит от параметра max виртуальных ядер — см. раздел ограничения ресурсов.Depends on max vCores configured - see resource limits. 0,5 виртуального ядра0.5 vCores
    Задержка автоматической приостановки работыAutopause delay Минимум: 60 мин (1 час)Minimum: 60 minutes (1 hour)
    Максимум: 10080 мин (7 дней)Maximum: 10080 minutes (7 days)
    Приращения: 60 минутIncrements: 60 minutes
    Отключение автоматической приостановки: -1Disable autopause: -1
    60 минут60 minutes

Создание новой базы данных на уровне бессерверных вычисленийCreate new database in serverless compute tier

В следующих примерах создается новая база данных на уровне бессерверных вычислений.The following examples create a new database in the serverless compute tier. В примерах явно указывается минимальное виртуальных ядер, Max виртуальных ядер и задержка приостановки.The examples explicitly specify the min vCores, max vCores, and autopause delay.

Использование портала AzureUse Azure portal

См. раздел Краткое руководство. Создание отдельной базы данных в базе данных SQL Azure с помощью портал Azure.See Quickstart: Create a single database in Azure SQL Database using the Azure portal.

Использование PowerShellUse PowerShell

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

Использование Azure CLIUse 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

Использовать Transact-SQL (T-SQL)Use Transact-SQL (T-SQL)

В следующем примере создается новая база данных на уровне бессерверных вычислений.The following example creates a new database in the serverless compute tier.

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

Дополнительные сведения см. в разделе Создание базы данных.For details, see CREATE DATABASE.

Перемещение базы данных из подготовленного уровня вычислений в бессерверный уровень вычисленийMove database from provisioned compute tier into serverless compute tier

В следующих примерах база данных перемещается из подготовленного уровня вычислений в бессерверный уровень вычислений.The following examples move a database from the provisioned compute tier into the serverless compute tier. В примерах явно указывается минимальное виртуальных ядер, Max виртуальных ядер и задержка приостановки.The examples explicitly specify the min vCores, max vCores, and autopause delay.

Использование PowerShellUse PowerShell

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

Использование Azure CLIUse 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

Использовать Transact-SQL (T-SQL)Use Transact-SQL (T-SQL)

В следующем примере база данных перемещается из подготовленного уровня вычислений в бессерверный уровень вычислений.The following example moves a database from the provisioned compute tier into the serverless compute tier.

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

Дополнительные сведения см. в разделе ALTER DATABASE.For details, see ALTER DATABASE.

Перемещение базы данных с бессерверного уровня вычислений в подготовленный уровень вычисленийMove database from serverless compute tier into provisioned compute tier

Перемещение бессерверной базы данных на уровень подготовленных вычислений выполняется так же, как и перемещение подготовленной базы данных на уровень бессерверных вычислений.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.

Изменение бессерверной конфигурацииModifying serverless configuration

Использование PowerShellUse PowerShell

Изменение максимальной или минимальной виртуальных ядер и задержки приостановки выполняется с помощью команды Set-азсклдатабасе в PowerShell с помощью аргументов MaxVcore, MinVcoreи 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.

Использование Azure CLIUse Azure CLI

Изменение максимальной или минимальной виртуальных ядер и задержки приостановки выполняется с помощью команды AZ SQL DB Update в Azure CLI с помощью аргументов capacity, min-capacityи 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.

МониторингMonitoring

Используемые и тарифицируемые ресурсыResources used and billed

Ресурсы базы данных, не связанные с сервером, инкапсулируются с помощью пакета приложения, экземпляра SQL и сущностей пользовательского пула ресурсов.The resources of a serverless database are encapsulated by app package, SQL instance, and user resource pool entities.

Пакет приложенияApp package

Пакет приложения представляет внешнюю границу управления для большинства ресурсов базы данных, независимо от того, на каком уровне находится база данных (бессерверные или подготовленные вычисления).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. Пакет приложения содержит экземпляр SQL и внешние службы, которые вместе определяют область применения всех пользовательских и системных ресурсов, используемых базой данных в Базе данных SQL.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. Внешние службы включают компоненты R и функцию полнотекстового поиска.Examples of external services include R and full-text search. Экземпляр SQL обычно управляет общим использованием ресурсов в пакете приложения.The SQL instance generally dominates the overall resource utilization across the app package.

Пул пользовательских ресурсовUser resource pool

Пул пользовательских ресурсов представляет внутреннюю границу управления для большинства ресурсов базы данных, независимо от того, на каком уровне находится база данных (бессерверные или подготовленные вычисления).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. Пул пользовательских ресурсов ограничивает ЦП и операции ввода-вывода для пользовательской рабочей нагрузки, создаваемой запросами DDL, такими как запросы CREATE, ALTER и DML, такие как SELECT, INSERT, UPDATE и 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. Эти запросы обычно представляют самые распространенные операции, потребляющие ресурсы в пакете приложения.These queries generally represent the most substantial proportion of utilization within the app package.

МетрикиMetrics

Метрики для мониторинга использования ресурсов пакета приложения и пула пользователей для бессерверной базы данных перечислены в следующей таблице.Metrics for monitoring the resource usage of the app package and user pool of a serverless database are listed in the following table:

УчреждениеEntity МетрикаMetric DescriptionDescription ЕдиницыUnits
Пакет приложенияApp package app_cpu_percentapp_cpu_percent Количество виртуальных ядер, используемых в приложении относительно максимального количества виртуальных ядер, которое можно использовать в приложении.Percentage of vCores used by the app relative to max vCores allowed for the app. ПроцентPercentage
Пакет приложенияApp package app_cpu_billedapp_cpu_billed Объем вычислительных ресурсов, тарифицируемых для приложения в отчетный период.The amount of compute billed for the app during the reporting period. Сумма, которая насчитывается за этот период, является произведением этого показателя и стоимости виртуального ядра.The amount paid during this period is the product of this metric and the vCore unit price.

Значение этого показателя вычисляется с учетом потребления максимального количества ресурсов ЦП и памяти в каждую секунду.Values of this metric are determined by aggregating over time the maximum of CPU used and memory used each second. Если используемые количество виртуальных ядер и объем ресурсов памяти меньше, чем минимальный подготовленный объем, плата взимается за подготовленные ресурсы.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. Чтобы сравнить ЦП с памятью в целях выставления счетов, память нормализуется в единицы виртуальных ядер путем повторного масштабирования объема памяти в ГБ на 3 ГБ на виртуальное ядро. 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.
Время использования виртуальных ядер в секундахvCore seconds
Пакет приложенияApp package app_memory_percentapp_memory_percent Объем памяти, используемый в приложении, относительно максимального объема памяти, который можно использовать в приложении.Percentage of memory used by the app relative to max memory allowed for the app. ПроцентPercentage
Пользовательский пулUser pool cpu_percentcpu_percent Количество виртуальных ядер, используемых пользовательской рабочей нагрузкой, относительно максимального количества виртуальных ядер, которое можно использовать в пользовательской рабочей нагрузке.Percentage of vCores used by user workload relative to max vCores allowed for user workload. ПроцентPercentage
Пользовательский пулUser pool data_IO_percentdata_IO_percent Количество операций ввода-вывода, используемых пользовательской рабочей нагрузкой, относительно максимального количества операций ввода-вывода, которое можно использовать в пользовательской рабочей нагрузке.Percentage of data IOPS used by user workload relative to max data IOPS allowed for user workload. ПроцентPercentage
Пользовательский пулUser pool log_IO_percentlog_IO_percent Количество записанных в журнал МБ/с, используемых пользовательской рабочей нагрузкой, относительно максимального количества записанных в журнал МБ/с, которое можно использовать в пользовательской рабочей нагрузке.Percentage of log MB/s used by user workload relative to max log MB/s allowed for user workload. ПроцентPercentage
Пользовательский пулUser pool workers_percentworkers_percent Количество рабочих ролей, используемых пользовательской рабочей нагрузкой, относительно максимального количества рабочих ролей, которое можно использовать в пользовательской рабочей нагрузке.Percentage of workers used by user workload relative to max workers allowed for user workload. ПроцентPercentage
Пользовательский пулUser pool sessions_percentsessions_percent Количество сеансов, используемых пользовательской рабочей нагрузкой, относительно максимального количества сеансов, которое можно использовать в пользовательской рабочей нагрузке.Percentage of sessions used by user workload relative to max sessions allowed for user workload. ПроцентPercentage

Состояние приостановки и возобновления работыPause and resume status

На портале Azure состояние базы данных отображается в разделе "Обзор" для сервера, содержащего список баз данных.In the Azure portal, the database status is displayed in the overview pane of the server that lists the databases it contains. Состояние базы данных также отображается в разделе "Обзор" для базы данных.The database status is also displayed in the overview pane for the database.

Используйте следующие команды для запроса состояния приостановки и возобновления базы данных:Using the following commands to query the pause and resume status of a database:

Использование PowerShellUse PowerShell

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

Использование Azure CLIUse Azure CLI

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

Ограничения ресурсовResource limits

Сведения об ограничениях ресурсов см. в разделе " бессерверный уровень вычислений".For resource limits, see serverless compute tier.

Выставление счетовBilling

Объем оплачиваемых вычислительных ресурсов зависит от максимального объема ресурсов ЦП и памяти, используемых каждую секунду.The amount of compute billed is the maximum of CPU used and memory used each second. Если используемый объем ЦП и памяти меньше, чем минимальный подготовленный объем, плата взимается за подготовленные ресурсы.If the amount of CPU used and memory used is less than the minimum amount provisioned for each, then the provisioned amount is billed. Чтобы сравнить, как взимается плата за ресурсы ЦП и памяти, представьте, что объем памяти нормализуется с учетом виртуальных ядер путем преобразования объема памяти в ГБ в количество виртуальных ядер по 3 ГБ.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.

  • Плата за ресурсы: ЦП и памятьResource billed: CPU and memory
  • Сумма счета: Виртуальное ядро Цена за единицу * максимум (мин виртуальных ядер, виртуальных ядер используется, минимальный объем памяти, гб * 1/3, использованный объем памяти * 1/3)Amount billed: vCore unit price * max (min vCores, vCores used, min memory GB * 1/3, memory GB used * 1/3)
  • Частота выставления счетов: в секундуBilling frequency: Per second

Цена за единицу Виртуальное ядро — это стоимость за Виртуальное ядро в секунду.The vCore unit price is the cost per vCore per second. См. подробнее на странице с ценами на Базу данных SQL Azure, где приведены цены за потребленные единицы ресурсов в заданном регионе.Refer to the Azure SQL Database pricing page for specific unit prices in a given region.

Объем тарифицируемых вычислительных ресурсов определяется следующим показателем:The amount of compute billed is exposed by the following metric:

  • Показатель: app_cpu_billed (виртуальное ядро в секунду).Metric: app_cpu_billed (vCore seconds)
  • Определение: максимальный объем ресурсов (минимальное количество виртуальных ядер, используемое количество виртуальных ядер, минимальный объем памяти в ГБ * 1/3, используемый объем памяти в ГБ * 1/3).Definition: max (min vCores, vCores used, min memory GB * 1/3, memory GB used * 1/3)
  • Периодичность создания отчетов: в минутуReporting frequency: Per minute

Это количество вычисляется каждую секунду и суммируется за 1 минуту.This quantity is calculated each second and aggregated over 1 minute.

Рассмотрим бессерверную базу данных с 1 min Виртуальное ядро и 4 Max виртуальных ядер.Consider a serverless database configured with 1 min vCore and 4 max vCores. Это соответствует примерно 3 ГБ памяти и максимальный объем памяти, равный 12 ГБ.This corresponds to around 3 GB min memory and 12-GB max memory. Предположим, что задержка автоматической приостановки равна 6 часам, а Рабочая нагрузка базы данных активна в течение первых 2 часов в 24-часовом периоде и иным образом неактивна.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.

В этом случае база данных оплачивается для вычислений и хранения в течение первых 8 часов.In this case, the database is billed for compute and storage during the first 8 hours. Несмотря на то, что база данных неактивна, начиная с второго часа, она по-прежнему оплачивается за вычислительные ресурсы в течение последующих 6 часов на основе минимальной подготовленной вычислительной среды, когда база данных находится в режиме «в сети».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. В течение оставшейся части 24-часового периода во время приостановки базы данных оплачивается только хранилище.Only storage is billed during the remainder of the 24-hour period while the database is paused.

Точнее, расчетный счет в этом примере вычисляется следующим образом:More precisely, the compute bill in this example is calculated as follows:

Интервал времениTime Interval Виртуальных ядер используется в секундуvCores used each second ГБ использовано в секундуGB used each second Расчетное измерение выставляетсяCompute dimension billed Виртуальное ядро с оплатой по интервалу времениvCore seconds billed over time interval
0:00-1:000:00-1:00 44 99 используется виртуальных ядерvCores used 4 виртуальных ядер * 3600 секунд = 14400 Виртуальное ядро секунды4 vCores * 3600 seconds = 14400 vCore seconds
1:00-2:001:00-2:00 11 1212 Используемая памятьMemory used 12 ГБ * 1/3 * 3600 секунд = 14400 Виртуальное ядро с12 GB * 1/3 * 3600 seconds = 14400 vCore seconds
2:00-8:002:00-8:00 00 00 Минимальный объем памяти, подготовленныйMin memory provisioned 3 ГБ * 1/3 * 21600 секунд = 21600 Виртуальное ядро с3 GB * 1/3 * 21600 seconds = 21600 vCore seconds
8:00-24:008:00-24:00 00 00 При приостановленном расчете не выставляется счетNo compute billed while paused 0 Виртуальное ядро секунд0 vCore seconds
Общее количество Виртуальное ядро секунд, выставленных за 24 часаTotal vCore seconds billed over 24 hours 50400 Виртуальное ядро секунд50400 vCore seconds

Предположим, что цена за единицу вычислений составляет 0,000073 долл. США/виртуальное ядро/секунда.Suppose the compute unit price is $0.000073/vCore/second. Затем выплата за этот 24-часовой период будет выставляться по цене за единицу вычислений и виртуальное ядро за считанные секунды: $0.000073/Виртуальное ядро/Second * 50400 Виртуальное ядро секунд = $3,68Then the compute billed for this 24-hour period is the product of the compute unit price and vCore seconds billed: $0.000073/vCore/second * 50400 vCore seconds = $3.68

Преимущество гибридного использования Azure и зарезервированная емкостьAzure Hybrid Benefit and reserved capacity

Преимущество гибридного использования Azure (АХБ) и зарезервированные скидки не применяются к уровню вычислений без сервера.Azure Hybrid Benefit (AHB) and reserved capacity discounts do not apply to the serverless compute tier.

Доступные регионыAvailable regions

Уровень бессерверных вычислений доступен по всему миру, за исключением следующих регионов: Восточный Китай, Северный Китай, Центральный Германия, северо-восток, северная часть Соединенного Королевства, южная часть Соединенного Королевства 2, Западная Центральная часть США и US Gov Central (Айова).The serverless compute tier is available worldwide except the following regions: China East, China North, Germany Central, Germany Northeast, UK North, UK South 2, West Central US, and US Gov Central (Iowa).

Дальнейшие действияNext steps