Compartilhar via


Comando Restore (TMSL)

Aplica-se a: SQL Server 2016 e posteriores do Analysis Services Azure Analysis Services Fabric/Power BI Premium

Use o comando Sequence para executar um conjunto consecutivo de operações no modo de lote em uma instância do Analysis Services. O comando inteiro e todas as partes do componente devem ser concluídos para que a transação tenha êxito.

Os comandos a seguir podem ser executados sequencialmente, exceto pelo comando Refresh , que é executado em paralelo para processar vários objetos simultaneamente.

Solicitação

maxParallelism é uma propriedade opcional que determina se as operações refresh são executadas sequencialmente ou em paralelo.

O comportamento padrão é usar o máximo de paralelismo possível. Ao inserir Atualizar na Sequência, você pode controlar o número exato de threads usados durante o processamento, incluindo limitar a operação a apenas um thread.

Observação

O inteiro atribuído a maxParallelism determina o número máximo de threads usados durante o processamento. Os valores válidos são qualquer inteiro positivo. Definir o valor como 1 é igual a não paralelo (usa um thread).

Somente Atualizar é executado em paralelo. Se você modificar maxParallelism para usar um número fixo de threads, examine as propriedades no comando Atualizar (TMSL) para entender o impacto potencial. É possível definir propriedades de uma forma que prejudique o paralelismo mesmo quando você disponibiliza vários threads. A seguinte sequência de tipos de atualização fornecerá o melhor grau de paralelismo:

  • Primeiro, especifique Atualizar para todos os objetos usando ClearValues

  • Em seguida, especifique Atualizar para todos os objetos usando DataOnly

  • Por último, especifique Atualizar para todos os objetos usando Full, Calculate, Automatic ou Add

Qualquer variação disso interromperá o paralelismo.

{   
  "sequence":    
    {   
      "maxParallelism": 3,   
      "operations": [   
        {   
          "mergepartitions": {   
            "sources": [   
              {   
                "database": "salesdatabase",   
                "table": "Sales",   
                "partition": "partition1"   
              },   
              {   
                "database": "salesdatabase",   
                "table": "Sales",   
                "partition": "partition2"   
              }   
            ]   
          }   
        },   
        {   
          "refresh": {   
            "type": "calculate",   
            "objects": [
              {   
              "database": "salesdatabase"   
              }
            ] 
          }   
        }   
      ]   
    }      
}   

Resposta

Retorna um resultado vazio quando o comando é bem-sucedido. Caso contrário, uma exceção XMLA será retornada.

Uso (pontos de extremidade)

Esse elemento de comando é usado em uma instrução do Método Execute em um ponto de extremidade XMLA, exposto das seguintes maneiras:

  • Como uma janela XMLA no SSMS (SQL Server Management Studio)

  • Como um arquivo de entrada para o cmdlet do PowerShell invoke-ascmd

  • Como uma entrada para uma tarefa do SSIS ou SQL Server Agent trabalho

Não é possível gerar um script pronto para esse comando do SSMS. Em vez disso, você pode começar com um exemplo ou escrever o seu próprio.