Em diversos casos, um projeto envolvendo o PowerBI é realizado de forma orgânica. Na maioria dos casos, a documentação do modelo é deficiente ou até mesmo inexistente.
Desta forma, futuras alterações de projetos, atualizações de relatórios e manutenção são complicadas de serem realizadas por pessoas que não estiveram envolvidas no processo inicial.
O processo de documentação a depender do modelo poderá ser demorado e muitas vezes não se enxerga inicialmente o custo-benefício associado a esta tarefa.
Com intuito de mitigar estes problemas, podemos utilizar ferramentas externas ao PowerBI que auxiliam na obtenção de informações do modelo.
Neste artigo apresentarei a ferramenta Model Documenter, que é bastante intuitivo de se utilizar e fornece as principais informações do modelo de forma estruturada e organizada em um novo arquivo de extensão PBIX que poderá ser acessado e obter informações relacionadas ao modelo de dados.
O Model Documenter surgiu no ano 2020 e desde então vem sofrendo diversos tipos de atualizações para acompanhar as mudanças e atualizações mensais do PowerBI. A versão mais recente da ferramenta é a v2.1.0 e pode ser encontrada para download em seu site oficial https://data-marc.com/model-documenter/
Para o download, basta acessar o link acima e clicar no botão “Download Power BI Model Documenter v2.1.0”, conforme imagem abaixo:
Após o download da ferramenta, devemos proceder com o processo normal de instalação como em qualquer outro aplicativo ou software.
Ao instalar o Model Documenter, o mesmo será exibido no menu de ferramentas externas do PowerBI:
Para iniciar o processo de documentação, basta clicar na ferramenta externa. Uma caixa ou prompt de diálogo/execução irá iniciar e coletar informações relativas ao modelo, conforme imagem abaixo:
Após a finalização do processamento, um novo arquivo .PBIX será gerado contendo informações do modelo de dados:
Podemos perceber que este novo PBIX contém 10 páginas de documentação geradas automaticamente sobre o seu modelo de dados. Detalharemos um pouco mais sobre as páginas logo abaixo:
Info
Contém informações gerais sobre a ferramenta e sobre a origem do modelo, neste caso, extraí a documentação utilizando um arquivo local e utilizando a versão 2.1 da ferramenta, que podem ser observados nos visuais intitulados “Model Information” e “Extraction”
PQ Parameters
Nesta tela, temos documentado todas informações relacionadas aos parâmetros utilizados no Power Query, bem como Queries Referenciadas:
Além disso, podemos perceber que é possível utilizar os filtros laterais para filtrar os parâmetros por nome e por tipo. Neste caso logo de imediato podemos perceber a utilização de 5 parâmetros no Power Query e 3 Queries referenciadas.
Tables
Nesta tela, temos documentado as informações relacionadas às tabelas do modelo. Logo de imediato, avaliamos nos cards que existem 14 tabelas no modelo, nenhuma tabela que são resultadas da função Auto DateTime. As 14 tabelas foram geradas no Power Query e nenhuma das tabelas foi gerada via DAX.
Novamente, possuímos filtros laterais, Table Type permite a segregação visual entre tabelas originadas no Power Query e as originadas via DAX.
Auto Generated DateTable permite segregar as tabelas que são resultadas da função auto datetime.
Is Hidden permite segregar as tabelas que estão ocultas no modelo
Is Referenced permite segregar as tabelas que são referenciadas no Power Query.
Além disso, possuímos um visual de tabela que mostra as informações gerais das tabelas como por exemplo a quantidade de partições que existem ou a quantidade de linhas.
Partitions & Polices
Seguindo o mesmo layout das páginas anteriores, temos filtros laterais para segregar as tabelas. Nesta tela é interessante perceber que caso existisse mais de uma partição para alguma tabela e políticas de atualização incremental, estas seriam exibidas nos cards, bem como a expressão que a gera no Power Query.
Na imagem abaixo, podemos perceber que a tabela “dAircraft” possui somente uma partição e não possui política de atualização incremental:
Columns
Na tela de Colunas, possuímos filtros como nas telas anteriores para segregar os visuais.
Os principais cards trazem a quantidade total de colunas, quantidade de colunas calculadas, quantidade de colunas ocultas e quantidade de colunas sem formatação.
Além disso, podemos verificar a cardinalidade de cada uma das colunas do projeto.
Calculation Groups
Nesta tela, temos informações relacionadas aos grupos de cálculos criados no Tabular Editor. Como neste projeto não foi utilizado nenhum grupo de cálculo, consequentemente, nenhuma informação é gerada na documentação.
Field Parameters
Semelhante à página Calculation Groups, nesta página, são documentadas informações relacionadas aos parâmetros de campo. Como neste projeto não foi utilizado nenhum parâmetro de campo, consequentemente, nenhuma informação é gerada na documentação
Measures
Nesta página, temos as informações relacionadas às medidas do projeto. Conforme imagem abaixo, são 131 medidas, sendo que todas estão sem a descrição da medida, estas medidas estão organizadas em 11 pastas diferentes, e nenhuma está oculta.
Podemos perceber também a possibilidade de segregação pelos filtros:
Table Name – Filtra as tabelas utilizadas para criar e organizar as medidas em pastas.
Display Folder – Filtra as medidas pelas pastas que foram criadas para organizar as medidas
Data Type – Filtra a medida de acordo com a tipagem.
Is Hidden – Filtra as medidas que estão ocultas no modelo.
Além dos filtros, possuímos um visual de tabela que lista todas as medidas, sua pasta de exibição, nome, descrição e a expressão DAX utilizada nesta medida, conforme imagem abaixo:
Relationships
Nesta página observamos informações relevantes sobre os relacionamentos entre tabelas do modelo.
Nos cards principais, avaliamos a quantidade de relacionamentos, quantos estão sendo realizados em cardinalidade muitos para muitos, quantos relacionamentos ativos e inativos existem.
Security
Avalia-se nesta tela, informações relacionadas às regras de RLS e Object Level Security aplicadas no modelo, como o nome, a descrição da regra, as tabelas que são utilizadas para as regras e as regras de filtros.
Neste modelo não foram utilizadas regras, logo, a documentação não exibe tais informações.
Sendo assim, executou-se um processo de documentação de forma simplificada. Basicamente um click na ferramenta externa “Model Documenter” gerou toda a documentação para o projeto.
A ferramenta gera um layout e informações padrões, mas existe a possibilidade de se criar outras páginas contendo outras informações relacionadas ao modelo.
Analisamos através da imagem abaixo, para cada variável de documentação, é gerada uma tabela e algumas medidas padrões, que são aquelas detalhadas anteriormente nas páginas.
Uma das virtudes dessa ferramenta é que existem outras diversas colunas com informações que podem gerar informações relevantes à documentação também. Na imagem abaixo, observa-se uma tabela com diversas colunas relacionadas somente às medidas criadas no modelo.
Vale a pena observar e investigar cada uma dessas colunas e trazer outras informações que não àqueles padrões gerados pela ferramenta.
Neste artigo cobrimos os principais pontos sobre a documentação de projetos utilizando a ferramenta externa “Model Documenter”.
No próximo artigo, estaremos utilizando a ferramenta para diagnosticar modelos de dados do PowerBI.
Muito interessante Renan😃