Otimizar o desempenho ao atualizar o conjunto de SQL dedicado (anteriormente SQL DW) no Azure Synapse Analytics

Atualize o conjunto de SQL dedicado (anteriormente SQL DW) para a geração mais recente da arquitetura de hardware e armazenamento do Azure.

Porquê atualizar?

Agora, pode atualizar de forma totalmente integrada para o conjunto de SQL dedicado (anteriormente SQL DW) escalão Otimizado para Computação Gen2 no portal do Azure para regiões suportadas. Se a sua região não suportar a auto-atualização, pode atualizar para uma região suportada ou aguardar que a atualização automática esteja disponível na sua região. Atualize agora para tirar partido da última geração de hardware do Azure e da arquitetura de armazenamento melhorada, incluindo um desempenho mais rápido, uma escalabilidade mais elevada e um armazenamento columnar ilimitado.

Importante

Esta atualização aplica-se a conjuntos de SQL dedicados de escalão De Computação Otimizado gen1 (fornmerly SQL DW) em regiões suportadas.

Antes de começar

  1. Verifique se a sua região é suportada para a migração GEN1 a GEN2. Tenha em atenção as datas de migração automática. Para evitar conflitos com o processo automatizado, planeie a migração manual antes da data de início do processo automatizado.

  2. Se estiver numa região que ainda não é suportada, continue a verificar se a sua região será adicionada ou atualizada utilizando o restauro para uma região suportada.

  3. Se a sua região for suportada, atualize através do portal do Azure

  4. Selecione o nível de desempenho sugerido para o conjunto de SQL dedicado (anteriormente SQL DW) com base no seu nível de desempenho atual no escalão Gen1 Otimizado para Computação através do mapeamento abaixo:

    Escalão Gen1 Otimizado para Computação Escalão Gen2 Otimizado para Computação
    DW100 DW100c
    DW200 DW200c
    DW300 DW300c
    DW400 DW400c
    DW500 DW500c
    DW600 DW500c
    DW1000 DW1000c
    DW1200 DW1000c
    DW1500 DW1500c
    DW2000 DW2000c
    DW3000 DW3000c
    DW6000 DW6000c

Nota

Os níveis de desempenho sugeridos não são uma conversão direta. Por exemplo, recomendamos que vá de DW600 a DW500c.

Atualizar numa região suportada com o portal do Azure

  • A migração da Gen1 para a Gen2 através da portal do Azure é permanente. Não existe um processo para regressar à Gen1.
  • O conjunto de SQL dedicado (anteriormente SQL DW) tem de estar em execução para migrar para Gen2

Antes de começar

Nota

Recomendamos que utilize o módulo do Azure Az PowerShell para interagir com o Azure. Veja Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

  • Inicie sessão no portal do Azure.
  • Certifique-se de que o conjunto de SQL dedicado (anteriormente SQL DW) está em execução - tem de ser migrar para Gen2

Comandos de atualização do PowerShell

  1. Se o conjunto de SQL dedicado de escalão Compute Optimized Gen1 (anteriormente SQL DW) a ser atualizado estiver em pausa, retome o conjunto de SQL dedicado (anteriormente SQL DW).

  2. Prepare-se para alguns minutos de indisponibilidade.

  3. Identifique quaisquer referências de código aos níveis de desempenho da Compute Optimized Gen1 e modifique-as para o nível de desempenho de Computação Otimizada gen2 equivalente. Seguem-se dois exemplos de onde deve atualizar as referências de código antes de atualizar:

    Comando original do PowerShell gen1:

    Set-AzSqlDatabase -ResourceGroupName "myResourceGroup" -DatabaseName "mySampleDataWarehouse" -ServerName "mynewserver-20171113" -RequestedServiceObjectiveName "DW300"
    

    Modificado para:

    Set-AzSqlDatabase -ResourceGroupName "myResourceGroup" -DatabaseName "mySampleDataWarehouse" -ServerName "mynewserver-20171113" -RequestedServiceObjectiveName "DW300c"
    

    Nota

    -RequestedServiceObjectiveName "DW300" foi alterado para - RequestedServiceObjectiveName "DW300c"

    Comando T-SQL original do Gen1:

    ALTER DATABASE mySampleDataWarehouse MODIFY (SERVICE_OBJECTIVE = 'DW300') ;
    

    Modificado para:

    ALTER DATABASE mySampleDataWarehouse MODIFY (SERVICE_OBJECTIVE = 'DW300c') ;
    

    Nota

    SERVICE_OBJECTIVE = "DW300" é alterado para SERVICE_OBJECTIVE = "DW300c"

Iniciar a atualização

  1. Aceda ao conjunto de SQL dedicado da Computação Otimizada gen1 (anteriormente SQL DW) no portal do Azure. Se o conjunto de SQL dedicado de escalão Compute Optimized Gen1 (anteriormente SQL DW) a atualizar estiver em pausa, retome o conjunto de SQL dedicado.

  2. Selecione Atualizar para o cartão Gen2 no separador Tarefas: Upgrade_1

    Nota

    Se não vir o cartão Atualizar para Gen2 no separador Tarefas, o tipo de subscrição é limitado na região atual. Submeta um pedido de suporte para que a sua subscrição seja aprovada.

  3. Certifique-se de que a carga de trabalho concluiu a execução e a atualização foi concluída. Irá deparar-se com um período de indisponibilidade durante alguns minutos antes de o conjunto de SQL dedicado (anteriormente SQL DW) estar novamente online como um conjunto de SQL dedicado de escalão de Computação Otimizado gen2 (anteriormente SQL DW). Selecione Atualizar:

    Upgrade_2

  4. Monitorize a atualização ao verificar o estado no portal do Azure:

    Atualização3

    O primeiro passo do processo de atualização passa pela operação de dimensionamento ("Atualizar - Offline") onde todas as sessões serão eliminadas e as ligações serão removidas.

    O segundo passo do processo de atualização é a migração de dados ("Atualizar - Online"). A migração de dados é um processo em segundo plano online. Este processo move lentamente dados columnar da arquitetura de armazenamento antiga para a nova arquitetura de armazenamento com uma cache SSD local. Durante este período, o conjunto de SQL dedicado (anteriormente SQL DW) estará online para consulta e carregamento. Os seus dados estarão disponíveis para consulta, independentemente de ter sido migrado ou não. A migração de dados ocorre a taxas variáveis consoante o tamanho dos dados, o nível de desempenho e o número de segmentos columnstore.

  5. Recomendação Opcional: Assim que a operação de dimensionamento estiver concluída, pode acelerar o processo em segundo plano da migração de dados. Pode forçar o movimento de dados ao executar a recompilação de Alter Index em todas as tabelas columnstore primárias que estaria a consultar numa classe de recursos e SLO maior. Esta operação está offline em comparação com o processo em segundo plano, que pode demorar horas a concluir consoante o número e os tamanhos das tabelas. No entanto, uma vez concluída, a migração de dados será muito mais rápida devido à nova arquitetura de armazenamento melhorada com grupos de linhas de alta qualidade.

Nota

Alter Index rebuild é uma operação offline e as tabelas só estarão disponíveis quando a reconstrução for 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';

Atualizar a partir de uma região geográfica do Azure com o restauro através do portal do Azure

Criar um ponto de restauro definido pelo utilizador com o portal do Azure

  1. Inicie sessão no portal do Azure.

  2. Navegue para o conjunto de SQL dedicado (anteriormente SQL DW) para o qual pretende criar um ponto de restauro.

  3. Na parte superior da secção Descrição geral, selecione +Novo Ponto de Restauro.

    Novo Ponto de Restauro

  4. Especifique um nome para o ponto de restauro.

    Nome do Ponto de Restauro

Restaurar uma base de dados ativa ou em pausa com o portal do Azure

  1. Inicie sessão no portal do Azure.

  2. Navegue para o conjunto de SQL dedicado (anteriormente SQL DW) a partir do qual pretende restaurar.

  3. Na parte superior da secção Descrição geral, selecione Restaurar.

     Descrição Geral do Restauro

  4. Selecione Pontos de restauro automáticos ou pontos de restauro definidos pelo utilizador. Para pontos de restauro definidos pelo utilizador, selecione um ponto de restauro definido pelo utilizador ou Criar um novo ponto de restauro definido pelo utilizador. Para o servidor, selecione Criar novo e escolha um servidor numa região geográfica suportada por Gen2.

    Pontos de Restauro Automático

Restaurar a partir de uma região geográfica do Azure com o PowerShell

Nota

Recomendamos que utilize o módulo do Azure Az PowerShell para interagir com o Azure. Veja Instalar o Azure PowerShell para começar. Para saber como migrar para o módulo do Az PowerShell, veja Migrar o Azure PowerShell do AzureRM para o Az.

Para recuperar uma base de dados, utilize o cmdlet Restore-AzSqlDatabase .

Nota

Pode efetuar um restauro geográfico para Gen2! Para tal, especifique um ServiceObjectiveName gen2 (por exemplo, DW1000c) como um parâmetro opcional.

  1. Abra o Windows PowerShell.
  2. Ligue-se à sua conta do Azure e liste todas as subscrições associadas à sua conta.
  3. Selecione a subscrição que contém a base de dados a restaurar.
  4. Obtenha a base de dados que pretende recuperar.
  5. Crie o pedido de recuperação para a base de dados, especificando um ServiceObjectiveName gen2.
  6. Verifique o estado da base de dados georreposta.
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

Nota

Para configurar a base de dados após a conclusão do restauro, veja Configurar a base de dados após a recuperação.

A base de dados recuperada será ativada por TDE se a base de dados de origem estiver ativada por TDE.

Se tiver problemas com o conjunto de SQL dedicado, crie um pedido de suporte e faça referência a "Atualização gen2" como a causa possível.

Passos seguintes

O seu conjunto de SQL dedicado atualizado (anteriormente SQL DW) está online. Para tirar partido da arquitetura melhorada, veja Classes de recursos para a Gestão de Cargas de Trabalho.