Definir partições em modelos DirectQuery

Aplica-se a: SQL Server Analysis Services Azure Analysis Services Fabric/Power BI Premium

Este artigo descreve como as partições são usadas em modelos DirectQuery. Para obter informações mais gerais sobre partições em modelos tabulares, consulte Partições em modelos tabulares.

Observação

Embora uma tabela possa ter várias partições, no modo DirectQuery, apenas uma delas pode ser designada para uso na execução da consulta. O requisito de partição única se aplica a modelos DirectQuery em todos os níveis de compatibilidade.

Usando partições no modo DirectQuery

Para cada tabela, você deve especificar uma única partição para usar como a fonte de dados DirectQuery. Se houver várias partições, quando você alternar o modelo para habilitar o modo DirectQuery, por padrão a primeira partição que foi criada na tabela será sinalizada como a partição DirectQuery. Você pode alterar isso posteriormente usando o Gerenciador de Partições no designer de modelo tabular no Visual Studio.

Por que permitir apenas uma partição única no modo DirectQuery? Em modelos tabulares (como em modelos OLAP), as partições de uma tabela são definidas por consultas do PowerQuery M ou consultas SQL. O desenvolvedor que cria a definição de partição é responsável por assegurar que não haja sobreposição de partições. O Analysis Services não verifica se os registros pertencem em uma ou várias partições.

As partições em um modelo de tabela armazenado em cache se comportam da mesma forma. Se você estiver usando um modelo na memória, enquanto o cache estiver sendo acessado, fórmulas DAX serão avaliadas para cada partição e os resultados serão combinados. Porém, quando um modelo de tabela usa o modo DirectQuery, é impossível avaliar várias partições, combinar os resultados e converter isso em uma instrução SQL a ser enviada ao repositório de dados relacional. Essa ação pode causar a perda inaceitável de desempenho e imprecisões em potencial, já que os resultados são agregados.

Portanto, para consultas respondidas no modo DirectQuery, o servidor usa uma única partição que foi marcada como a partição primária para acesso do DirectQuery, chamada de partição DirectQuery. A consulta SQL especificada na definição dessa partição define o conjunto completo de dados que podem ser usados para responder a consultas no modo DirectQuery.

Se você não definir a partição explicitamente, o mecanismo simplesmente emitirá uma consulta SQL à fonte de dados relacional inteira, executará qualquer operação baseada em conjunto ditada pela fórmula DAX e retornará os resultados da consulta.

Alterar uma partição do DirectQuery

Como apenas uma partição em uma tabela pode ser designada como a partição DirectQuery, por padrão, o Analysis Services usa a primeira partição criada na tabela. Durante a criação do projeto de modelo, você pode alterar a partição DirectQuery usando o Gerenciador de Partições. Para modelos implantados, você pode alterar a partição DirectQuery usando SQL Server Management Studio.

Alterar a partição DirectQuery para um projeto de modelo de tabela

  1. No Visual Studio, no designer de modelo, clique na tabela (guia) que contém a tabela particionada.

  2. Clique em Extensões>Partiçõesde Tabela>.

  3. No Gerenciador de Partições, a partição que é a partição atual Direct Query é indicada pelo prefixo (DirectQuery) no nome da partição.

    Selecione outra partição na lista Partições e clique em Definir como DirectQuery. O botão Definir como DirectQuery não é habilitado quando a partição DirectQuery atual é selecionada e não fica visível quando o modelo não está habilitado no modo Direct Query.

Alterar a partição DirectQuery para um modelo de tabela implantado

  1. Em SQL Server Management Studio, abra o banco de dados de modelo em Pesquisador de Objetos.

  2. Expanda o nó Tabelas , clique com o botão direito do mouse na tabela particionada e selecione Partições.

    A partição que é designada para uso com o modo DirectQuery tem o prefixo (DirectQuery) no nome da partição.

  3. Para alterar para uma partição diferente, clique no ícone da barra de ferramentas Direct Query para abrir a caixa de diálogo Definir Partição DirectQuery . O ícone da barra de ferramentas DirectQuery não está disponível em modelos não habilitados para Direct Query.

  4. Escolha outra partição na lista suspensa Nome da Partição e altere opções de processamento na partição, caso seja necessário.

Confira também

Partições