Otimizar o desempenho atualizando o pool de SQL dedicado (antigo SQL DW) no Azure Synapse Analytics
Atualize seu pool de SQL dedicado (antigo SQL DW) para a última geração de arquitetura de armazenamento e de hardware do Azure.
Por que atualizar?
Agora você pode atualizar diretamente para a camada de Computação Otimizada Gen2 do pool de SQL dedicado (antigo SQL DW) no portal do Azure para regiões com suporte. Se a região não der suporte à atualização automática, você poderá atualizar para uma região com suporte ou aguardar que a atualização automática esteja disponível em sua região. Atualize agora para aproveitar a última geração de hardware do Azure e arquitetura de armazenamento aprimorada, incluindo um desempenho mais rápido, escalabilidade mais alta e armazenamento em colunas ilimitado.
Importante
Essa atualização se aplica aos pools de SQL dedicados (antigo SQL DW) da camada de Computação otimizada Gen1 nas regiões com suporte.
Antes de começar
Verifique se a região tem suporte para GEN1 para GEN2 para migração. Observe as datas de migração automática. Para evitar conflitos com o processo automatizado, planeje a migração manual antes da data de início do processo automatizado.
Se você estiver em uma região que ainda não tenha suporte, continue a verificar sua região a ser adicionada ou atualize usando restauração para uma região com suporte.
Se a região for compatível, atualize por meio do portal do Azure
Selecione o nível de desempenho sugerido do pool de SQL dedicado (antigo SQL DW) com base em seu nível de desempenho atual na camada de Computação Otimizada Gen1 usando o mapeamento abaixo:
Camada de Computação Otimizada Gen1 Camada de Computação Otimizada Gen2 DW100 DW100c DW200 DW200c DW300 DW300c DW400 DW400c DW500 DW500c DW600 DW500c DW1000 DW1000c DW1200 DW1000c DW1500 DW1500c DW2000 DW2000c DW3000 DW3000c DW6000 DW6000c
Observação
Níveis de desempenho sugeridos não são uma conversão direta. Por exemplo, é recomendável ele irem de DW600 a DW500c.
Atualizar em uma região com suporte usando o portal do Azure
- A migração de Gen1 para Gen2 por meio do portal do Azure é permanente. Não há um processo para retornar para Gen1.
- O pool de SQL dedicado (antigo SQL DW) deve estar em execução para migrar para o Gen2
Antes de começar
Observação
Recomendamos que você use o módulo Az PowerShell do Azure para interagir com o Azure. Para começar, consulte Instalar o Azure PowerShell. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.
- Entre no portal do Azure.
- Verifique se o pool de SQL dedicado (antigo SQL DW) está em execução – condição para a migração para Gen2
Comandos de atualização do PowerShell
Se o pool de SQL dedicado (antigo SQL DW) da camada de Computação Otimizada Gen1 a ser atualizado estiver em pausa, volte a colocar o pool de SQL dedicado em execução.
Esteja preparado para alguns minutos de tempo de inatividade.
Identifique quaisquer referências de código para os níveis de desempenho de Computação Otimizada Gen1 e modifique-os para o nível de desempenho de Computação Otimizada Gen2. Abaixo, são apresentados dois exemplos para atualizar as referências de código antes da atualização:
Comando do PowerShell Gen1 original:
Set-AzSqlDatabase -ResourceGroupName "myResourceGroup" -DatabaseName "mySampleDataWarehouse" -ServerName "mynewserver-20171113" -RequestedServiceObjectiveName "DW300"
Modificado para:
Set-AzSqlDatabase -ResourceGroupName "myResourceGroup" -DatabaseName "mySampleDataWarehouse" -ServerName "mynewserver-20171113" -RequestedServiceObjectiveName "DW300c"
Observação
-RequestedServiceObjectiveName "DW300" alterado para - RequestedServiceObjectiveName "DW300c"
Comando T-SQL Gen1 original:
ALTER DATABASE mySampleDataWarehouse MODIFY (SERVICE_OBJECTIVE = 'DW300') ;
Modificado para:
ALTER DATABASE mySampleDataWarehouse MODIFY (SERVICE_OBJECTIVE = 'DW300c') ;
Observação
SERVICE_OBJECTIVE = 'DW300' alterador para SERVICE_OBJECTIVE = 'DW300c'
Inicie a atualização
Vá para seu pool de SQL dedicado (antigo SQL DW) de Computação Otimizada Gen1 no portal do Azure. Se o pool de SQL dedicado (antigo SQL DW) da camada de Computação Otimizada Gen1 a ser atualizado estiver em pausa, volte a colocar o pool de SQL dedicado em execução.
Selecione o cartão Atualizar para o Gen2 na guia Tarefas:
Observação
Se você não vir o cartão Fazer upgrade para Gen2 na guia Tarefas, seu tipo de assinatura será limitado na região atual. Envie um tíquete de suporte para que sua assinatura seja aprovada.
Certifique-se de que sua carga de trabalho teve sua execução concluída e foi confirmada antes de atualizar. Você experimentará alguns minutos de tempo de inatividade antes que seu pool de SQL dedicado (antigo SQL DW) esteja online novamente como um pool de SQL dedicado da camada de Computação Otimizada Gen2.
Selecione Atualizar.
Monitore a atualização verificando o status no portal do Azure. Você provavelmente verá uma faixa de mensagem que indica “Este data warehouse está sendo atualizado para o Gen2”.
A primeira etapa do processo de atualização passa pela operação de expansão ("Atualização - Offline") em que todas as sessões serão eliminadas e as conexões serão removidas.
A segunda etapa do processo de atualização é a migração de dados ("Atualização - Online"). A migração de dados é um processo lento online em segundo plano. Esse processo lentamente move dados de colunas da arquitetura de armazenamento antiga para a nova arquitetura de armazenamento usando um cache SSD local. Durante esse tempo, seu pool SQL de dedicado (antigo SQL DW) estará online para consulta e carregamento. Seus dados estarão disponíveis para consulta, independentemente de se forem migrados ou não. A migração de dados ocorre a uma taxa que varia dependendo do tamanho dos seus dados, do nível de desempenho e do número de segmentos do columnstore.
Recomendação opcional: assim que a operação de dimensionamento for concluída, você pode acelerar o processo de migração de dados em segundo plano. Force a movimentação de dados executando ALTER INDEX ... REBUILD em todas as tabelas columnstore primárias que você consulta em uma classe de recurso e SLO maior. Essa operação é offline e degradará ou bloqueará outras consultas, mas será concluída mais rapidamente em comparação com o processo lento em segundo plano, que pode demorar horas para ser concluído, dependendo do número e dos tamanhos das tabelas. No entanto, uma vez concluída, a migração de dados será muito mais rápida devido à nova arquitetura de armazenamento aprimorada com rowgroups de alta qualidade.
Observação
Alter Index rebuild é uma operação offline e as tabelas não estarão disponíveis até que a recompilação esteja concluída.
A seguinte consulta gera os comandos ALTER INDEX ... REBUILD
necessários para acelerar a migração de dados:
SELECT 'ALTER INDEX [' + idx.NAME + '] ON ['
+ Schema_name(tbl.schema_id) + '].['
+ Object_name(idx.object_id) + '] REBUILD ' + ( CASE
WHEN (
(SELECT Count(*)
FROM sys.partitions
part2
WHERE part2.index_id
= idx.index_id
AND
idx.object_id =
part2.object_id)
> 1 ) THEN
' PARTITION = '
+ Cast(part.partition_number AS NVARCHAR(256))
ELSE ''
END ) + '; SELECT ''[' +
idx.NAME + '] ON [' + Schema_name(tbl.schema_id) + '].[' +
Object_name(idx.object_id) + '] ' + (
CASE
WHEN ( (SELECT Count(*)
FROM sys.partitions
part2
WHERE
part2.index_id =
idx.index_id
AND idx.object_id
= part2.object_id) > 1 ) THEN
' PARTITION = '
+ Cast(part.partition_number AS NVARCHAR(256))
+ ' completed'';'
ELSE ' completed'';'
END )
FROM sys.indexes idx
INNER JOIN sys.tables tbl
ON idx.object_id = tbl.object_id
LEFT OUTER JOIN sys.partitions part
ON idx.index_id = part.index_id
AND idx.object_id = part.object_id
WHERE idx.type_desc = 'CLUSTERED COLUMNSTORE';
Atualize de uma região geográfica do Azure usando a restauração por meio do portal do Azure
Criar um ponto de restauração definido pelo usuário usando o portal do Azure
- Entre no portal do Azure.
- Navegue até o pool de SQL dedicado (antigo SQL DW) para o qual você deseja criar um ponto de restauração.
- Na barra de ferramentas da página Visão Geral, selecione + Novo Ponto de Restauração.
- Especifique um nome para seu ponto de restauração.
Restaurar um banco de dados ativo ou pausado usando o portal do Azure
Entre no portal do Azure.
Navegue até o pool de SQL dedicado (antigo SQL DW) que você deseja restaurar.
Na barra de ferramentas da seção Visão geral, selecione Restaurar.
Selecione Pontos de restauração automática ou Pontos de restauração definido pelo usuário. No caso dos pontos de usuário, selecione um ponto de restauração definido pelo usuário ou Criar ponto de restauração definido pelo usuário. No caso do servidor, selecione Criar e escolha um servidor em uma região geográfica com suporte do Gen2.
Restaurar um banco de dados excluído usando o PowerShell
Observação
Recomendamos que você use o módulo Az PowerShell do Azure para interagir com o Azure. Para começar, consulte Instalar o Azure PowerShell. Para saber como migrar para o módulo Az PowerShell, confira Migrar o Azure PowerShell do AzureRM para o Az.
Para recuperar um banco de dados, use o cmdlet Restore-AzSqlDatabase.
Observação
Você pode executar uma restauração geográfica para Gen2! Para fazer isso, especifique um ServiceObjectiveName de Gen2 (por exemplo, DW1000c) como parâmetro opcional.
- Abra o Windows PowerShell.
- Conecte-se à sua conta do Azure e liste todas as assinaturas associadas à sua conta.
- Selecione a assinatura que contém o banco de dados a ser restaurado.
- Obtenha o banco de dados que você deseja recuperar.
- Crie a solicitação de recuperação para o banco de dados, especificando um ServiceObjectiveName Gen2.
- Verifique o status do banco de dados com restauração geográfica.
Connect-AzAccount
Get-AzSubscription
Select-AzSubscription -SubscriptionName "<Subscription_name>"
# Get the database you want to recover
$GeoBackup = Get-AzSqlDatabaseGeoBackup -ResourceGroupName "<YourResourceGroupName>" -ServerName "<YourServerName>" -DatabaseName "<YourDatabaseName>"
# Recover database
$GeoRestoredDatabase = Restore-AzSqlDatabase –FromGeoBackup -ResourceGroupName "<YourResourceGroupName>" -ServerName "<YourTargetServer>" -TargetDatabaseName "<NewDatabaseName>" –ResourceId $GeoBackup.ResourceID -ServiceObjectiveName "<YourTargetServiceLevel>" -RequestedServiceObjectiveName "DW300c"
# Verify that the geo-restored database is online
$GeoRestoredDatabase.status
Observação
Para configurar o banco de dados após a conclusão da restauração, consulte Configurar o banco de dados após a recuperação.
O banco de dados recuperado será habilitado para TDE se o banco de dados de origem for habilitado para TDE.
Se você tiver problemas com seu pool de SQL dedicado, crie uma solicitação de suporte e mencione "atualização de Gen2" como a possível causa.
Seu pool de SQL dedicado atualizado (antigo SQL DW) está online. Para aproveitar a arquitetura aprimorada, saiba mais sobre classes de recursos.