19 Maio 2026
Fabric Model Analyzer: Monitorização de Boas Práticas à Escala Empresarial
Os modelos semânticos são o componente central em projetos de Business Intelligence (BI), servindo como fonte para relatórios, dashboards e outputs de IA — incluindo Copilot, data agents e MCP servers.
No Microsoft Fabric e no Power BI, o artefacto modelo semântico representa muito mais do que um dataset (como era anteriormente designado). Inclui também relações entre tabelas, hierarquias de campos, medidas (métricas e KPIs), funções, perspetivas, regras de segurança e muito mais.
Um modelo semântico bem desenvolvido segue um conjunto de boas práticas de modelação tabular. À medida que as soluções crescem em cenários empresariais, surge naturalmente uma questão:
Como garantir o acompanhamento das melhores práticas em múltiplos modelos semânticos, especialmente em ambientes de self-service BI?
A primeira resposta a esta questão é o conjunto de regras do Best Practice Analyzer (BPA). Foi criada uma lista oficial de regras — abrangendo expressões DAX, convenções de erros, prevenção de erros, formatação, manutenção, convenções de nomenclatura e performance — por Michael Kovalsky, Principal Program Manager na Microsoft. É também o criador do Semantic Link Labs, uma biblioteca do Microsoft Fabric abordada na secção seguinte.
Quando o BPA foi inicialmente lançado, a abordagem recomendada era utilizá-lo em conjunto com a ferramenta open-source da comunidade Tabular Editor. Esta ferramenta é amplamente utilizada, oferece versões gratuitas e pagas e continua a ser popular na comunidade Power BI.
No entanto, este processo requer configuração e apresenta limitações relevantes em termos de output e escalabilidade. A ferramenta tem de ser instalada localmente, e as regras têm de ser descarregadas como ficheiro JSON e colocadas na pasta da ferramenta ou carregadas em runtime através de um script C# na janela de scripting avançado.
Uma vez configurada, a ferramenta liga-se ao modelo — localmente ou remotamente através do XMLA endpoint — executa as regras do BPA e gera os resultados. A partir daí, o developer pode começar a corrigir os problemas ou exportar os resultados para ficheiro plano para análise adicional, podendo combinar outputs de vários modelos em simultâneo.
Este processo pode ser bastante complexo para muitos utilizadores e está limitado a um modelo de cada vez em ambiente de desenvolvimento local. Isto levanta um novo conjunto de questões:
1. Como simplificar o processo?
2. Como aplicá-lo a múltiplos modelos em simultâneo?
3. Como executá-lo num ambiente cloud, sem depender de instalação e configuração de ferramentas locais?
4. Como padronizar e centralizar o output para análise e governança à escala?
O Microsoft Fabric reúne várias experiências numa única plataforma de dados. Isto inclui Lakehouses para armazenamento de dados e notebooks para processamento. O Fabric Model Analyzer (FMA) é um Best Practice Analyzer para modelos semânticos totalmente construído sobre estes artefactos.
Sendo uma solução totalmente baseada na cloud, o FMA já responde à questão 3. Não é necessária instalação ou configuração de ferramentas locais. A única configuração necessária é a criação dos artefactos base (um Lakehouse e um Notebook) e a instalação da biblioteca Semantic Link Labs.
A Semantic Link é uma biblioteca Python nativa do Microsoft Fabric, mantida pela Microsoft. Inclui várias funções auxiliares para trabalhar no ambiente Fabric e foi originalmente concebida para facilitar a ligação de data scientists a modelos semânticos dentro de notebooks.
Rapidamente ganhou adoção por modeladores de dados, BI developers, engenheiros de dados e administradores de Fabric, uma vez que permite ligação a modelos tabulares sem depender de ferramentas externas como o Tabular Editor.
Semantic Link Labs é também uma biblioteca Python criada por Michael Kovalsky que estende o Semantic Link com várias funcionalidades adicionais. Inclui múltiplos wrappers de APIs do Fabric e funções diversas, sendo que muitas das funcionalidades mais utilizadas acabam por ser posteriormente integradas no próprio Semantic Link. Importa referir que o Semantic Link Labs não é oficialmente mantido pela Microsoft — é uma biblioteca open-source, orientada pela comunidade, semelhante ao Tabular Editor.
Uma dessas funcionalidades é o BPA, que o Semantic Link Labs também consegue aplicar a múltiplos modelos semânticos em simultâneo, respondendo à questão 2.
Uma das principais vantagens do FMA em relação a outras abordagens é a simplicidade do seu processo simplificado. Existe uma lineage clara entre os artefactos e pode ser implementado rapidamente em qualquer ambiente com suporte Fabric.
Requisitos:
Limitações:
Apesar de ser uma solução baseada em código, o código é simples, parametrizado, bem documentado e legível. Uma vez configurado, apenas necessita de execução — o que responde à questão 1 ao simplificar significativamente o processo original.
Num workspace com suporte Fabric, o primeiro passo é criar um Lakehouse. Esquemas são opcionais; se ativados, a tabela Delta será automaticamente criada sob o esquema dbo (automaticamente).
De seguida, faz upload do Notebook do FMA para o workspace. Dentro do Notebook, associa o Lakehouse previamente criado como default e atualiza os parâmetros.
Parâmetros:
Tip: Se for necessário incluir workspaces não-Premium na análise, a licença pode ser temporariamente atualizada para um tipo Premium, permitindo o acesso ao XMLA endpoint. Após a execução, pode ser revertida para Pro.
Com tudo configurado, executa-se o Notebook. Este irá automaticamente analisar todos os workspaces listados, validar cada modelo semântico com base nas regras BPA (ignorando os excluídos) e escrever os resultados na tabela Delta modelbparesults. Se a tabela não existir, será criada automaticamente no Lakehouse default. Todos os resultados são registados com um run ID, permitindo análises históricas e comparação de tendências ao longo do tempo.
O Notebook também cria o modelo semântico em Direct Lake ligado ao Lakehouse e adiciona as medidas base. Este passo só precisa de ser executado uma vez na configuração inicial.
Por fim, liga-se o relatório fornecido ao modelo através de live connection. O relatório já está alinhado com o schema do modelo e inclui medidas adicionais. Foi construído com um tema white-label, facilitando a adaptação à identidade visual e requisitos da organização.
Isto fornece uma solução consistente para monitorizar todos os modelos semânticos em todos os workspaces validados em cada execução. Modelos específicos podem ser excluídos da análise — o próprio modelo FMA, por exemplo, deve ser sempre excluído para evitar autoavaliação em execuções futuras. Isto responde à questão 4: um output padronizado e centralizado para análise e governança à escala empresarial.
O Fabric Model Analyzer traz o tradicional Best Practice Analyzer para uma solução moderna, integrada e cloud-native construída sobre o Microsoft Fabric — escalável para nível empresarial. Remove a dependência de ferramentas externas e ficheiros planos e introduz uma lineage e governance claras sobre os modelos semânticos do tenant, com resultados históricos auditáveis.
Futuras versões irão focar-se no suporte a Custom Rules (atualmente não disponível nas funções batch utilizadas) e no enriquecimento dos resultados com output do VertiPaq Analyzer.