Composite Models ou Modelos Compostos no Power BI são muito úteis para trabalhar simultaneamente em um mesmo projeto modos diferentes de modos de conexão. Mas Gerson, quais são estes modelos de conexão?
Antes de continuar a falar sobre Composite Models, vamos ver os tipos de conexões disponíveis.
Import (Importar) – Este modo é o modo padrão e mais utilizado. Os dados são importados e ficam na memória, essa tecnologia é chamada de Vertipaq.
DirectQuery (Consulta Direta) – é um método de recuperação de dados, que extrai os dados diretamente da fonte de dados, no momento da consulta! Enquanto o modo de importação armazena o os dados na memória — o DirectQuery (DQ) não armazena dados. Para cada solicitação, ele vai direto para a fonte de dados e extrai os dados de lá.
Assim, os dados residem em sua fonte original antes, durante e depois da execução da consulta!
Ao interagir com o relatório, os usuários geram uma consulta (ou conjunto de consultas na maioria dos casos) que precisa ser executada para atender às solicitações.
Dual (Duplo) – os dados são armazenados na memória cache, mas também podem ser recuperados da fonte de dados original. É um cenário comum configurar tabelas de dimensão em modelos compostos para estarem no modo duplo, para que possam ser consultadas com tabelas de fatos da mesma fonte.
Híbrido — um dos recursos mais recentes do Power BI. Você pode pensar em tabelas híbridas como tendo o modo DirectQuery e Import em uma única tabela! Configurar uma partição de tabela para ser DirectQuery, enquanto os dados restantes permanecem no modo de importação.
Vamos para a prática. Importamos 3 tabelas para o Power BI, Vendas (DirectQuery), Produto (DirectQuery) e Clientes (Import). Sendo que as Tabelas Vendas e Produto estão conectados em um SQL Server e Clientes em uma pasta de trabalho de Excel.
Fazendo isso já estamos trabalhando com o Composite Models, ou seja, estamos trabalhando com mais de um tipo de conexão com as fontes de dados. Mas podemos mudar mais uma conexão.
Perceba que temos a tabela Produto e Vendas que estão no DirectQuery, mas podemos alterar o tipo de conexão depois de fazer a conexão. A Tabela Produto podemos alterar para o modo de armazenamento Dual.
Ao alterar o modo de armazenamento para Dual, aparece uma janela com o aviso conforme imagem abaixo.
Ao alterar para o modo de armazenamento para Dual, o Power BI que vai decidir quando usar o DirectQuery o Import da tabela, não existe uma regra padrão. Veja como ficou o modelo na imagem abaixo.
Dessa forma podemos relacionar todas as tabelas mesmo com os modos de armazenamento diferentes.
Mas a pergunta que fica é, quando usamos o modo Dual ou modelos compostos? e a resposta é famosa, Depende. Não existe um padrão. O correto é sempre testar o seu modelo qual é o melhor resultado.
Agora temos o modelo híbrido também onde em uma mesma tabela podemos ter o modo import, DirectQuery e real time. Vamos falar desse modo em um próximo artigo.
Mas atenção, utilize DirectQuery somente quando o import não atender a sua necessidade.
Para as tabelas que estão como Dual, tem as mesmas restrições que um DirectQuery.
Voce pode ver a documentação completo no site da Microsoft: Usar modelos compostos no Power BI Desktop – Power BI | Microsoft Learn
Espero que este artigo tenha que ajudado.
Forte Abraço
Gerson Viergutz