Sem servidor é uma camada de computação para bancos de dados únicos no Banco de Dados SQL do Azure que dimensiona automaticamente a computação com base na demanda da carga de trabalho e cobra pela quantidade de computação usada por segundo. A camada de computação sem servidor também pausa os bancos de dados automaticamente durante períodos inativos quando apenas o armazenamento é cobrado e retoma automaticamente os bancos de dados quando a atividade retorna. A camada de computação sem servidor está disponível na camada de serviço de Uso Geral e na camada de serviço de Hiperescala.
Observação
Atualmente, a pausa e a retomada automáticas têm suporte apenas na camada de serviço de Uso Geral.
Visão geral
Um intervalo de dimensionamento automático de computação e um atraso de pausa automática são parâmetros importantes para a camada de computação sem servidor. A configuração desses parâmetros forma o custo de computação e a experiência de desempenho do banco de dados.
Configuração de desempenho
mínimo de vCores e máximo de vCores são parâmetros configuráveis que definem o intervalo de capacidade de computação disponível para o banco de dados. Os limites de memória e E/S são proporcionais ao intervalo de vCore especificado.
O atraso de pausa automática é um parâmetro configurável que define o período que o banco de dados deve ficar inativo antes que ele entre automaticamente em pausa. O banco de dados é retomado automaticamente quando o próximo logon ou outra atividade ocorre. Alternativamente, a pausa automática pode ser desabilitada.
Custo
O custo de um banco de dados sem servidor é a soma do custo de computação e do custo de armazenamento.
Quando o uso de computação está entre os limites mínimo e máximo configurados, o custo de computação baseia-se no vCore e na memória usada.
Quando o uso de computação estiver abaixo dos limites mínimos configurados, o custo de computação se baseará no mínimo de vCores e no mínimo de memória configurada.
Quando o banco de dados é pausado, o custo de computação é zero, e somente os custos de armazenamento são incorridos.
O custo de armazenamento é determinado da mesma forma que na camada de computação provisionada.
A camada sem servidor é otimizada para preço/desempenho para bancos de dados individuais com padrões de uso intermitentes e imprevisíveis que podem gerar atraso no aquecimento de computação após períodos ociosos. Por outro lado, a camada de computação provisionada é otimizada para preço/desempenho para bancos de dados individuais ou múltiplos bancos de dados em pools elásticos com maior uso médio que não podem apresentar atrasos no aquecimento de computação.
Cenários adequados para a computação sem servidor
Bancos de dados individuais com padrões de uso intermitentes e imprevisíveis intercalados com períodos de inatividade e menor utilização média de computação ao longo do tempo.
Bancos de dados individuais na camada de computação provisionada que são frequentemente reescalonados e clientes que preferem delegar o reescalonamento de computação para o serviço.
Novos bancos de dados individuais sem histórico de uso em que o escalonamento de computação é difícil ou impossível de estimar antes da implantação no Banco de Dados SQL do Azure.
Cenários adequados para computação provisionada
Bancos de dados individuais com padrões de uso mais regulares, previsíveis e maior utilização média de computação ao longo do tempo.
Bancos de dados que não podem tolerar compensações de desempenho resultantes do corte mais frequente de memória ou do atrasos de retomada após uma pausa.
Vários bancos de dados com padrões de uso intermitentes e imprevisíveis que podem ser consolidados em pools elásticos para melhor otimização de preços e desempenho.
Comparar camadas de computação
A tabela a seguir resume as diferenças entre a camada de computação sem servidor e a camada de computação provisionada:
Computação sem servidor
Computação provisionada
Padrão de uso do banco de dados
Uso intermitente e imprevisível com menor utilização média de computação ao longo do tempo.
Padrões de uso mais regulares com maior utilização média de computação ao longo do tempo ou vários bancos de dados usando pools elásticos.
Esforço de gerenciamento de desempenho
Inferior
Superior
Dimensionamento de computação
Automático
Manual
Capacidade de resposta de computação
Inferior após períodos de inatividade
Imediata
Granularidade de cobrança
Por segundo
Por hora
Camada de serviço e modelo de compra
A tabela a seguir descreve o suporte sem servidor com base no modelo de compra, nas camadas de serviço e no hardware:
Os bancos de dados sem servidor são executados em um computador com capacidade suficiente para satisfazer as demandas de recursos sem interrupção para qualquer quantidade de computação solicitada dentro dos limites definidos pelo valor de máximo de vCores. Ocasionalmente, o balanceamento de carga ocorrerá automaticamente se o computador não puder atender à demanda de recursos dentro de alguns minutos. Por exemplo, se a demanda de recursos for 4 vCores, mas só 2 vCores estiverem disponíveis, poderá levar alguns minutos para balancear a carga antes do fornecimento de 4 vCores. O banco de dados permanece online durante o balanceamento de carga, exceto por um breve período ao final da operação, quando as conexões são perdidas.
Gerenciamento de memória
Nas camadas de serviço de uso geral e de Hiperescala, a memória de bancos de dados sem servidor é recuperada com mais frequência do que para bancos de dados de computação provisionados. Esse comportamento é importante para controlar os custos na camada sem servidor e pode afetar o desempenho.
Recuperação de cache
Ao contrário dos bancos de dados de computação provisionada, a memória de cache SQL é recuperada de um banco de dados sem servidor quando a utilização de CPU ou de cache ativo for baixa.
A utilização do cache ativo é considerada baixa quando o tamanho total das entradas de cache usadas mais recentemente fica abaixo de um limite durante um período.
Quando a recuperação do cache é disparada, o tamanho do cache de destino é reduzido incrementalmente para uma fração do tamanho anterior, e a recuperação só continua se o uso permanece baixo.
Quando ocorre a recuperação do cache, a política para selecionar entradas de cache a serem removidas é a mesma política de seleção que para bancos de dados de computação provisionados quando a pressão de memória é alta.
O tamanho do cache nunca é reduzido abaixo do limite mínimo de memória, conforme definido pelo mínimo de vCores.
Em bancos de dados de computação sem servidor e provisionados, as entradas de cache poderão ser removidas se toda a memória disponível for usada.
Quando a utilização da CPU é baixa, a utilização do cache ativo pode ficar alta dependendo do padrão de uso e impedir a recuperação da memória. Além disso, pode haver outros atrasos depois que a atividade do usuário parar antes que a recuperação de memória ocorra, devido a processos periódicos em segundo plano que respondem à atividade anterior do usuário. Por exemplo, operações de exclusão e tarefas de limpeza de Repositório de Consultas geram registros fantasmas que são marcados para exclusão, mas não são excluídos fisicamente até que o processo de limpeza fantasma seja executado. A limpeza de fantasma poderia envolver a leitura de páginas de dados no cache.
Hidratação de cache
O cache de memória do SQL aumenta à medida que os dados são obtidos do disco da mesma forma e com a mesma velocidade dos bancos de dados provisionados. Quando o banco de dados está ocupado, o cache pode aumentar sem restrições enquanto houver memória disponível.
Gerenciamento de cache de disco
No nível de serviço de Hiperescala tanto nas camadas de computação provisionadas e sem servidor, cada réplica de computação usa um cache RBPEX (Extensão do Pool de Buffers Resilientes), que armazena páginas de dados no SSD local para melhorar o desempenho de E/S. No entanto, na camada de computação sem servidor da Hiperescala, o cache RBPEX para cada réplica de computação aumenta e diminui automaticamente em resposta ao aumento e diminuição da demanda de carga de trabalho. O tamanho máximo que o cache RBPEX pode atingir é três vezes a memória máxima configurada para o banco de dados. Para obter detalhes sobre a memória máxima e os limites de dimensionamento automático RBPEX sem servidor, confira os limites de recursos de Hiperescala sem servidor.
Pausa e retomada automáticas
Atualmente, a pausa e a retomada automáticas sem servidor têm suporte apenas na camada de uso geral.
Pausa automática
A pausa automática será ativada se todas as seguintes condições forem verdadeiras durante o atraso de pausa automática:
Número de sessões = 0
CPU = 0 para a carga de trabalho do usuário em execução no pool de recursos do usuário
Há uma opção para desativar a pausa automática, se desejado.
Os seguintes recursos não oferecem suporte à pausa automática, mas oferecem suporte ao dimensionamento automático. Se qualquer um dos recursos a seguir for usado, a pausa automática deverá ser desabilitada e o banco de dados permanecerá online, independentemente da duração da inatividade do banco de dados:
O banco de dados de sincronização usado na sincronização de dados SQL oferecem suporte à pausa automática, ao contrário dos bancos de dados de sincronização, os bancos de dados de hub e de membros.
Alias DNS criado para o servidor lógico que contém um banco de dados sem servidor.
Trabalhos Elásticos, o banco de dados sem servidor habilitado para pausa automática não pode ser usado como um Banco de Dados de Trabalho. Bancos de dados sem servidor direcionados a trabalhos elásticos dão suporte à pausa automática. As conexões de trabalho retomarão um banco de dados.
A pausa automática é evitada temporariamente durante a implantação de algumas atualizações de serviço que exigem que o banco de dados esteja online. Nesses casos, a pausa automática será permitida novamente após o término da atualização do serviço.
Solução de problemas de pausa automática
Se a pausa automática estiver habilitada e os recursos que bloqueiam a pausa automática não forem usados, mas um banco de dados não pausar automaticamente após o período de atraso, as sessões do aplicativo ou do usuário podem estar impedindo a pausa automática.
Para ver se há qualquer aplicativo ou sessões de usuário conectadas ao banco de dados no momento, conecte-se ao banco de dados usando qualquer ferramenta de cliente e execute a seguinte consulta:
SELECT session_id,
host_name,
program_name,
client_interface_name,
login_name,
status,
login_time,
last_request_start_time,
last_request_end_time
FROM sys.dm_exec_sessions AS s
INNER JOIN sys.dm_resource_governor_workload_groups AS wg
ON s.group_id = wg.group_id
WHERE s.session_id <> @@SPID
AND
(
(
wg.name like 'UserPrimaryGroup.DB%'
AND
TRY_CAST(RIGHT(wg.name, LEN(wg.name) - LEN('UserPrimaryGroup.DB') - 2) AS int) = DB_ID()
)
OR
wg.name = 'DACGroup'
);
Dica
Depois de executar a consulta, desconecte-se do banco de dados. Caso contrário, a sessão aberta usada pela consulta impedirá a pausa automática.
Se o conjunto de resultados não estiver vazio, ele indicará que há sessões impedindo a pausa automática no momento.
Se o conjunto de resultados estiver vazio, ainda é possível que as sessões tenham sido abertas, possivelmente por um curto período, em algum momento anterior durante o período de atraso de pausa automática. Para verificar atividades durante o período de atraso, você pode usar a auditoria de SQL do Azure e examinar os dados de auditoria para o período relevante.
Importante
A presença de sessões abertas, com ou sem utilização simultânea da CPU no pool de recursos do usuário, é o motivo mais comum para um banco de dados sem servidor não pausar automaticamente conforme o esperado.
Retomada automática
A retomada automática será ativada se uma das seguintes condições for verdadeira em algum momento:
Recurso
Gatilho de retomada automática
Autenticação e autorização
Logon
Detecção de ameaças
Habilitar/desabilitar as configurações de detecção de ameaças no nível do banco de dados ou do servidor. Alterar as configurações de detecção de ameaças no nível do banco de dados ou do servidor.
Descoberta e classificação de dados
Adicionar, modificar, excluir ou exibir os rótulos de confidencialidade
Auditoria
Exibir os registros de auditoria. Atualizar ou exibir a política de auditoria.
Mascaramento de dados
Adicionar, modificar, excluir ou exibir as regras de mascaramento de dados
Transparent Data Encryption
Exibir o estado ou status de Transparent Data Encryption
Avaliação de vulnerabilidade
Verificações ad hoc e verificações periódicas, se habilitadas
Consultar o armazenamento de dados (desempenho)
Modificar ou exibir configurações do repositório de consultas
Recomendações do desempenho
Exibir ou aplicar recomendações de desempenho
Ajuste automático
Aplicação e verificação de recomendações de ajuste automático, como indexação automática
Cópia de banco de dados
Criar banco de dados como uma cópia. Exportar para um arquivo BACPAC.
Sincronização de dados SQL
Sincronização entre bancos de dados membro e hub que são executados em um cronograma configurável ou são executados manualmente
Modificar alguns metadados do banco de dados
Adicionar novas marcas de banco de dados. Alterar o máximo de vCores, mínimo de vCores ou atraso de pausa automática.
SQL Server Management Studio (SSMS)
Ao usar versões do SSMS anteriores à 18.1 e abrir uma nova janela de consulta para qualquer banco de dados no servidor, todos os bancos de dados em pausa automática no mesmo servidor serão retomados. Esse comportamento não ocorre ao usar a versão 18.1 do SSMS ou posteriores.
O monitoramento, o gerenciamento ou outras soluções que executam qualquer uma das operações listadas acima vão disparar a retomada automática. A retomada automática também é disparada durante a implantação de algumas atualizações de serviço que exigem que o banco de dados esteja online.
Conectividade
Se um banco de dados sem servidor estiver em pausa, a primeira tentativa de conexão retomará o banco de dados e gerará um erro informando que o banco de dados está indisponível, com o código de erro 40613. Depois que o banco de dados for retomado, o logon deve ser repetido para estabelecer a conectividade. Os clientes de banco de dados que seguem uma recomendações de lógica de repetição de conexão não devem ser modificados. Para obter opções e recomendações de lógica de repetição de conexão, consulte:
A latência para a retomada e a pausa automática de um banco de dados sem servidor geralmente é uma ordem de 1 minuto para retomar automaticamente e 1 a 10 minutos após a expiração do período de atraso para pausar automaticamente.
Transparent Data Encryption (BYOK) gerenciada pelo cliente
Exclusão ou revogação de chave
Se estiver usando a Transparent Data Encryption (BYOK) gerenciada pelo cliente, e o banco de dados sem servidor for pausado automaticamente quando ocorrer a exclusão ou a revogação da chave, o banco de dados permanecerá no estado de pausa automática. Nesse caso, depois que o banco de dados for retomado, o banco de dados se tornará inacessível dentro de aproximadamente 10 minutos. Quando o banco de dados se tornar inacessível, o processo de recuperação será o mesmo para bancos de dados de computação provisionados. Se o banco de dados sem servidor estiver online quando ocorrer a exclusão ou a revogação de chave, o banco de dados também se tornará inacessível dentro de aproximadamente 10 minutos da mesma forma que com os bancos de dados de computação provisionados.
Alteração de chaves
Se estiver usando a criptografia de dados transparente (BYOK) gerenciada pelo cliente e a pausa automática sem servidor estiver habilitada, o banco de dados será retomado automaticamente sempre que as chaves forem alteradas e, posteriormente, pausado automaticamente quando as condições de pausa automática forem satisfeitas.
Criar um banco de dados sem servidor
Criar um novo banco de dados ou mover um banco de dados existente para uma camada de computação sem servidor segue o mesmo padrão que criar um novo banco de dados em uma camada de computação provisionada e envolve as duas etapas a seguir:
Especificar o objetivo de serviço. O objetivo de serviço prescreve a camada de serviço, a configuração de hardware e o máximo de vCores. Para obter as opções de objetivo de serviço, veja Limites de recursos sem servidor
Opcionalmente, especifique o atraso de pausa automática e o mínimo de vCores para alterar seus valores padrão. A tabela a seguir mostra os valores disponíveis para esses parâmetros.
Crie um banco de dados Hiperescala sem servidor com uma réplica de alta disponibilidade e redundância de zona usando o seguinte exemplo da CLI do Azure:
az sql db create -g $resourceGroupName -s $serverName -n $databaseName `
-e Hyperscale --compute-model Serverless -f Gen5 `
--min-capacity 0.5 -c 2 `
--ha-replicas 1 --backup-storage-redundancy Zone --zone-redundant
Usar o Transact-SQL (T-SQL)
Quando você usa T-SQL para criar um novo banco de dados sem servidor, os valores padrão são aplicados para o mínimo de vCores e atraso de pausa automática. Seus valores podem ser alterados posteriormente no portal do Azure ou por meio da API, incluindo PowerShell, CLI do Azure e REST.
Ao mover um banco de dados entre camadas de computação, especifique o parâmetro de modelo de computação como Serverless ou Provisioned ao usar o PowerShell ou a CLI do Azure, ou SERVICE_OBJECTIVE ao usar T-SQL. Revise os limites de recursos para identificar o objetivo de serviço apropriado.
Os exemplos a seguir movem um banco de dados existente de computação provisionada para computação sem servidor.
Quando você usa T-SQL para mover um banco de dados entre camadas de computação, os valores padrão são aplicados ao mínimo de vCores e atraso de pausa automática. Seus valores podem ser alterados posteriormente no portal do Azure ou por meio da API, incluindo PowerShell, CLI do Azure e REST. Para saber mais, confira ALTERAR BANCO DE DADOS.
Mova um banco de dados de Uso Geral de computação provisionado para a camada de computação sem servidor com o seguinte exemplo de T-SQL:
ALTER DATABASE testdb
MODIFY ( SERVICE_OBJECTIVE = 'GP_S_Gen5_1') ;
Mova um banco de dados Hiperescala de computação provisionado para a camada de computação sem servidor com o seguinte exemplo de T-SQL:
ALTER DATABASE testdb
MODIFY ( SERVICE_OBJECTIVE = 'HS_S_Gen5_2') ;
Modificar a configuração sem servidor
Usar o PowerShell
Use Set-AzSqlDatabase para modificar os vCores máximos ou mínimos e o atraso da pausa automática. Use os argumentos MaxVcore, MinVcore e AutoPauseDelayInMinutes. A pausa automática sem servidor não tem suporte atualmente na camada de Hiperescala. Portanto, o argumento de atraso da pausa automática só é aplicável à camada de uso geral.
Usar a CLI do Azure
Use az sql db update para modificar o máximo ou mínimo de vCores e o atraso da pausa automática. Use os argumentos capacity, min-capacity e auto-pause-delay. A pausa automática sem servidor não tem suporte atualmente na camada de Hiperescala. Portanto, o argumento de atraso da pausa automática só é aplicável à camada de uso geral.
Monitor
Recursos usados e cobrados
Os recursos de um banco de dados sem servidor incluem o pacote do aplicativo, instância do SQL e entidades do pool de recursos do usuário.
Pacote do Aplicativo
O pacote do aplicativo é o limite externo de gerenciamento de recursos de um banco de dados, independentemente de se o banco de dados está em uma camada de computação sem servidor ou provisionada. O pacote do aplicativo contém a instância do SQL e os serviços externos, como pesquisa de texto completo, que, juntos, englobam todos os recursos de usuário e do sistema usados por um banco de dados no Banco de Dados SQL. Em geral, a instância do SQL domina a utilização geral de recursos no pacote do aplicativo.
Pool de recursos do usuário
O pool de recursos do usuário é um limite interno de gerenciamento de recursos de um banco de dados, independentemente de se o banco de dados está em uma camada de computação sem servidor ou provisionada. O pool de recursos do usuário engloba CPU e E/S para cargas de trabalho do usuário geradas por consultas DDL (CREATE e ALTER) e DML (INSERT, UPDATE, DELETE e MERGE e SELECT). Essas consultas geralmente representam a proporção mais substancial de utilização dentro do pacote do aplicativo.
Métricas
A tabela a seguir inclui métricas de monitoramento do uso de recursos do pacote de aplicativos e o pool de recursos do usuário de um banco de dados sem servidor, incluindo quaisquer réplicas geográficas:
Entity
Métrica
Descrição
Unidades
Pacote do Aplicativo
app_cpu_percent
Percentual de vCores usados pelo aplicativo em relação ao máximo de vCores permitido para o aplicativo. Na Hiperescala sem servidor, essa métrica é exposta para todas as réplicas primárias, nomeadas e geográficas.
Porcentagem
Pacote do Aplicativo
app_cpu_billed
A quantidade de computação cobrada para o aplicativo durante o período do relatório. O valor pago durante esse período é o produto dessa métrica e o preço unitário de vCore.
Os valores dessa métrica são determinados pela agregação do máximo de CPU usado e a memória usada por segundo. Se o valor usado for menor que a quantidade mínima provisionada conforme definido pelo mínimo de vCores e de memória, a quantidade mínima provisionada será cobrada. Para comparar CPU com memória para fins de cobrança, a memória é normalizada em unidades de vCores ao redimensionar a quantidade de memória em GB por 3 GB por vCore. Na Hiperescala sem servidor, essa métrica é exposta para a réplica primária e quaisquer réplicas nomeadas.
Segundos de vCore
Pacote do Aplicativo
app_cpu_billed_HA_replicas
Aplicável somente à Hiperescala sem servidor. Soma da computação cobrada em todos os aplicativos para réplicas de alta disponibilidade durante o período do relatório. Essa soma tem como escopo as réplicas HA pertencentes à réplica primária ou as réplicas HA pertencentes a uma determinada réplica nomeada. Antes de calcular essa soma nas réplicas de HA, a quantidade de computação cobrada para uma réplica de HA individual é determinada da mesma forma que para a réplica primária ou uma réplica nomeada. Na Hiperescala sem servidor, essa métrica é exposta para todas as réplicas primárias, nomeadas e geográficas. O valor pago durante esse período do relatório é o produto dessa métrica e o preço unitário de vCore.
Segundos de vCore
Pacote do Aplicativo
app_memory_percent
Percentual da memória usada pelo aplicativo em relação ao máximo de memória permitida para o aplicativo. Na Hiperescala sem servidor, essa métrica é exposta para todas as réplicas primárias, nomeadas e geográficas.
Porcentagem
Pool de recursos do usuário
cpu_percent
Percentual de vCores usados pela carga de trabalho do usuário em relação ao máximo de vCores permitido para a carga de trabalho do usuário.
Porcentagem
Pool de recursos do usuário
data_IO_percent
Percentual de IOPS de dados usados pela carga de trabalho do usuário em relação ao máximo de IOPS de dados permitido para a carga de trabalho do usuário.
Porcentagem
Pool de recursos do usuário
log_IO_percent
Percentual de MB/s de log usados pela carga de trabalho do usuário em relação ao máximo de MB/s de log permitido para a carga de trabalho do usuário.
Porcentagem
Pool de recursos do usuário
workers_percent
Percentual de funções de trabalho usadas pela carga de trabalho do usuário em relação ao máximo de funções de trabalho permitidas para a carga de trabalho do usuário.
Porcentagem
Pool de recursos do usuário
sessions_percent
Percentual de sessões usadas pela carga de trabalho do usuário em relação ao máximo de sessões permitidas para a carga de trabalho do usuário.
Porcentagem
Pausar e retomar status
No caso de um banco de dados sem servidor com a pausa automática habilitada, o status relatado inclui os seguintes valores:
Status
Descrição
Online
O banco de dados está online.
Pausando
O banco de dados está em transição de online para pausado.
Pausada
O banco de dados está pausado.
Retomando
O banco de dados está em transição de pausado para online.
Usar o portal do Azure
No portal do Azure, o status do banco de dados é exibido na página visão geral do banco de dados e do servidor. Também no portal do Azure, o histórico de pausas e os eventos de retomada de um banco de dados sem servidor podem ser exibidos no log de atividades.
Usar o PowerShell
Exiba o status atual do banco de dados usando o seguinte exemplo do PowerShell:
A quantidade de computação cobrada por um banco de dados sem servidor é o máximo de CPU e memória usados a cada segundo. Se a quantidade de CPU e memória usada for menor que a quantidade mínima provisionada para cada recurso, a quantidade provisionada será cobrada. Para comparar a CPU com a memória para fins de cobrança, a memória é normalizada em unidades de vCores redimensionando o número de GB em 3 GB por vCore.
Recurso cobrado: CPU e memória
Valor cobrado: preço unitário de vCore * máximo (mínimo de vCores, vCores usados, GB de memória mínimo * 1/3, GB de memória usados * 1/3)
Frequência de cobrança: Por segundo
O preço unitário de vCore é o custo por vCore por segundo.
A quantidade de computação cobrada sem servidor para um banco de dados de uso geral ou uma réplica primária ou nomeada de Hiperescala é exposta pela seguinte métrica:
Métrica: app_cpu_billed (segundos de vCore)
Definição: máximo (mínimo de vCores, vCores usados, mínimo de memória em GB * 1/3, GB de memória usados * 1/3)
Frequência de relatório: por minuto com base em medidas por segundo agregadas ao longo de 1 minuto.
A quantidade de computação cobrada sem servidor para réplicas de HA em Hiperescala pertencentes à réplica primária ou a qualquer réplica nomeada é exposta pela seguinte métrica:
Métrica: app_cpu_billed_HA_replicas (segundos de vCore)
Definição: soma do máximo (mínimo de vCores, vCores usados, minínimo de memória em GB * 1/3, memória em GB usada * 1/3) para quaisquer réplicas de HA pertencentes ao recurso pai.
Recurso pai e ponto de extremidade de métrica: a réplica primária e qualquer réplica nomeada expõem separadamente essa métrica que mede a computação cobrada para quaisquer réplicas HA associadas.
Frequência de relatório: por minuto com base em medidas por segundo agregadas ao longo de 1 minuto.
Fatura de computação mínima
Se um banco de dados sem servidor for pausado, a fatura de computação será zero. Se um banco de dados sem servidor não estiver pausado, a fatura de computação mínima não será menor que a quantidade de vCores com base no máximo (vCores mínimos, mínimo de memória em GB * 1/3).
Exemplos:
Suponhamos que um banco de dados na camada de Uso Geral sem servidor não seja pausado e configurado com máximo de 8 vCores e mínimo de 1 vCore correspondente a 3,0 GB de memória mínima. Assim, a conta de computação mínima é baseada no máximo (1 vCore, 3,0 GB * 1 vCore/3 GB) = 1 vCore.
Suponha que um banco de dados sem servidor na camada de Uso Geral não esteja em pausa e esteja configurado com máximo de 4 vCores e 0,5 mínimo de vCores correspondentes a 2,1 GB de memória mínima. Assim, a conta de computação mínima é baseada no máximo (0,5 vCore, 2,1 GB * 1 vCore/3 GB) = 0,7 vCores.
Suponha que um banco de dados sem servidor na camada de Hiperescala tenha uma réplica primária com uma réplica de HA e uma réplica nomeada sem réplicas de HA. Suponha que cada réplica seja configurada com máximo de 8 vCores e mínimo de 1 vCore correspondente a 3 GB min de memória. Em seguida, a fatura mínima de computação para a réplica primária, de HA e nomeada são baseadas no máximo (1 vCore, 3 GB * 1 vCore / 3 GB) = 1 vCore.
A calculadora de preços do banco de dados SQL do Azure para sem servidor pode ser usada para determinar a memória mínima configurável com base no número de máximo e mínimo de vCores configurado. Como regra, se mínimo de vCores configurado for superior a 0,5 vCores, a conta de computação mínima será independente da memória mínima configurada e baseada apenas no número mínimo de vCores configurado.
Considere um banco de dados sem servidor na camada de Uso Geral configurado com mínimo de 1 vCore e máximo de 4 vCores. Essa configuração corresponde a cerca de 3 GB de memória mínima e 12 GB de memória máxima. Suponha que o atraso de pausa automática seja definido como 6 horas, e que a carga de trabalho do banco de dados esteja ativa durante as 2 primeiras horas de um período de 24 horas e, de outra forma, inativa.
Nesse caso, o banco de dados é cobrado por computação e armazenamento durante as primeiras 8 horas. Apesar de o banco de dados estar inativo e iniciar após a segunda hora, ele ainda é cobrado pela computação nas próximas 6 horas com base na computação mínima provisionada enquanto o banco de dados está online. Somente o armazenamento é cobrado durante o restante do período de 24 horas enquanto o banco de dados está pausado.
Mais precisamente, a fatura de computação neste exemplo é calculada da seguinte maneira:
Intervalo de tempo
vCores usado por segundo
GB usados por segundo
Dimensão de computação cobrada
Segundos de vCore cobrados no intervalo de tempo
0:00-1:00
4
9
vCores usados
4 vCores * 3600 segundos = 14400 segundos de vCore
Suponha que o preço de unidade de computação seja US$ 0,000145/vCore/segundo. Em seguida, a computação cobrada para esse período de 24 horas é o produto do preço de unidade de computação e os segundos de vCore cobrados: US$ 0,000145/vCore/segundo * 50400 segundos de vCore ~ US$ 7,31.
Considere um banco de dados sem servidor na camada Hiperescala configurado com mínimo de 1 vCore e máximo de 8 vCores. Suponha que a réplica primária tenha habilitado uma réplica de HA e que uma réplica nomeada com mínimo de 1 vCore e máximo de 8 vCores também tenha sido provisionada. Em cada réplica, essa configuração corresponde a 3 GB de memória mínima e 24 GB de memória máxima. Suponha ainda que a carga de trabalho de gravação ocorra durante um período de 24 horas, mas que a carga de trabalho somente leitura ocorra apenas durante as primeiras 8 horas desse período.
Nesse exemplo, a computação cobrada pelo banco de dados é a soma da computação cobrada para cada réplica e calculada da seguinte maneira, com base no padrão de uso descrito nas seguintes tabelas:
Réplica primária
Intervalo de tempo
vCores usado por segundo
GB usados por segundo
Dimensão de computação cobrada
Segundos de vCore cobrados no intervalo de tempo
0:00-2:00
8
15
vCores usados
8 vCores * 7.200 segundos = 57.600 segundos de vCore
1 vCore * 36.000 segundos = 36.000 segundos de vCore
Total de segundos de vCore cobrados em 24 horas
180.000 segundos de vCore
Suponha que o preço da unidade de computação para a réplica primária seja US$ 0,000105/vCore/segundo. Em seguida, a computação cobrada pela réplica primária durante esse período de 24 horas é o produto do preço da unidade de computação e os segundos de vCore cobrados: US$ 0,000105/vCore/segundo * 180.000 segundos de vCore ~ US$ 18,90.
Réplica de HA
Intervalo de tempo
vCores usado por segundo
GB usados por segundo
Dimensão de computação cobrada
Segundos de vCore cobrados no intervalo de tempo
0:00-2:00
8
9
vCores usados
8 vCores * 7.200 segundos = 57.600 segundos de vCore
Suponha que o preço da unidade de computação de uma réplica de HA seja US$ 0,000105/vCore/segundo. Assim, a computação cobrada pela réplica de HA nesse período de 24 horas será de US$ 0,000105/vCore/segundo* 136.800 vCore segundos ~ US$ 14,36.
Réplica nomeada
Da mesma forma, para a réplica nomeada, suponha que o total de segundos de vCore cobrados em 24 horas seja de 150.000 segundos de vCore e que o preço da unidade de computação para uma réplica nomeada seja US$ 0,000105/vCore/segundo. Assim, a computação cobrada pela réplica nomeada durante esse período é de US$ 0,000105/vCore/segundo * 150.000 segundos de vCore ~ US$ 15,75.
Custo total de computação
Portanto, a cobrança de computação total para todas as três réplicas do banco de dados é de cerca de US$ 18,90 + ~ US$ 14,36 + US$ 15,75 = US$ 49,01.
Benefício Híbrido do Azure e capacidade reserva
O Benefício Híbrido do Azure (AHB) e os descontos de capacidade reservada não se aplicam à camada de computação sem servidor.
Regiões disponíveis
O modo sem servidor para camadas Uso Geral e de Hiperescala com suporte para até 40 vCores estão disponíveis em todo o mundo, exceto nas seguintes regiões:
Leste da China
Norte da China
Alemanha Central
Nordeste da Alemanha
US Gov Central (Iowa)
Regiões com suporte a no máximo 80 vCores sem zonas de disponibilidade para Uso Geral e Hiperescala
No momento, há suporte ao máximo de 80 vCores em camadas sem servidor para Uso Geral e Hiperescala nas seguintes regiões:
Austrália Central 1
Austrália Central 2
Leste da Austrália
Sudeste da Austrália
Brazil South
Sudeste do Brasil
Canadá Central
Leste do Canadá
Centro dos EUA
Leste da China 2
Leste da China 3
Norte da China 2
Norte da China 3
Leste da Ásia
Leste dos EUA
Leste dos EUA 2
França Central
Sul da França
Norte da Alemanha
Centro-Oeste da Alemanha
Centro da Índia
Sul da Índia
Israel Central
Norte da Itália
Leste do Japão
Oeste do Japão
Jio India Central
Jio Oeste da Índia
Coreia Central
Sul da Coreia
Maylaysia South
México Central
Centro-Norte dos EUA
Norte da Europa
Leste da Noruega
Oeste da Noruega
Polônia Central
Catar Central
Norte da África do Sul
Oeste da África do Sul
Centro-Sul dos Estados Unidos
Sudeste Asiático
Espanha Central
Suécia Central
Sul da Suécia
Norte da Suíça
Oeste da Suíça
Norte de Taiwan
Noroeste de Taiwan
EAU Central
Norte dos EAU
Sul do Reino Unido
Oeste do Reino Unido
US Gov East
US Gov Southcentral
US Gov Southwest
Europa Ocidental
Centro-Oeste dos EUA
Oeste dos EUA
Oeste dos EUA 2
Oeste dos EUA 3
Regiões com suporte a no máximo 80 vCores com zonas de disponibilidade para Uso Geral e Hiperescala
No momento, há suporte ao máximo de 80 vCores com zona de disponibilidade sem servidor para as camadas de Uso Geral e Hiperescala oferecido nas seguintes regiões (com plano de adição de mais regiões):
O Azure HPC é uma funcionalidade de nuvem criada com finalidade para a carga de trabalho de IA e HPC, usando processadores de ponta e interconexão InfiniBand da classe HPC para fornecer o melhor desempenho, escalabilidade e valor do aplicativo. O Azure HPC permite que os usuários obtenham inovação, produtividade e agilidade empresarial, por meio de uma variedade altamente disponível de tecnologias de HPC e IA que podem ser alocadas dinamicamente conforme as suas necessidades técnicas e empresariais mudam. E
Administrar uma infraestrutura de banco de dados do SQL Server para bancos de dados relacionais de nuvem, locais e híbridos usando as ofertas de banco de dados relacional do Microsoft PaaS.
O modelo de compra de vCore permite que você escale independentemente recursos de computação e de armazenamento, equipare o desempenho local e otimize o preço do Banco de Dados SQL do Azure
Saiba mais sobre os modelos de compra disponíveis para o Banco de Dados SQL do Azure: o modelo de compra vCore, que fornece uma escolha entre as camadas de computação provisionadas ou sem servidor e o modelo de compra DTU, que fornece pacotes de computação e armazenamento agrupados balanceados para cargas de trabalho comuns.
Saiba mais sobre o modelo de compra baseado em DTU para Banco de Dados SQL do Azure e compare os tamanhos de computação e armazenamento com base em camadas de serviço.
Gerencie e escale vários bancos de dados no Banco de Dados SQL do Azure, centenas ou milhares, usando pools elásticos. Por um preço, você pode distribuir recursos onde são necessários.
Migre um banco de dados do Banco de Dados SQL do Azure do modelo de DTU para o modelo de vCore. A migração para o vCore é semelhante ao upgrade ou ao downgrade entre as camadas Standard e Premium.
Este artigo explica como dimensionar o banco de dados no Banco de Dados SQL do Azure e na Instância Gerenciada de SQL do Azure adicionando ou removendo recursos alocados.
Saiba como usar o Assistente de Migração de Dados para identificar o SKU ideal do Banco de Dados SQL do Azure, da Instância Gerenciada de SQL do Azure ou do SQL Server na VM do Azure para seu banco de dados local.