[Live #54] Como construir um Data Warehouse (DW) com Pentaho (by Rafael Arruda)
HTML-код
- Опубликовано: 6 сен 2024
- - Conecte-se com Rafael Arruda: / rafael-arruda-39145738
📊 Inscreva-se no Curso Completo de Power BI, a maior e mais avançada formação em análise de dados do mercado: powerbiexperie...
👨💻 Fale com nossos especialistas para tirar dúvidas sobre treinamentos: bit.ly/Especia...
Os materiais para download ficam disponíveis por poucos dias e depois são de exclusividade dos alunos do Curso Completo. Portanto assista o quanto antes, de preferência ao vivo comigo para participar e interagir!
#powerbi #LiveDoMestre #MestrePowerBI #CamisaFlorida #aprendaPBI #aprendaPowerBI #dax #calculate #dashboards #dashboard
Galera ... pra resolver essa dúvida de qual SK vai na Fato deve-se utilizar o próprio "Dimension lookup/update" e desmarcar a opção "Update the Dimension" .... selecionar as chaves, o sk, o campo da versão e os campos de data inicial e data final da dimensão versionada.... mais fácil do que parece. Vlw
Isso aí, boa Irio!!
Dois monstros!
Boa noite Leonardo,
Simulei o step "Dimension lookup/update" e o mesmo funcionou bem conforme a Live, entretanto ele insistiu em ter uma linha nula na tabela.
Se alguém passou por isso e tem a solução agradeço. Parabéns pela Live!
Tem como disponibilizar o download novamente
@Leonardo Karpinski - Power BI Marter, sobre o histórico de versões que o Arruda montou.
Suponhamos que a dimensão customer não tem alterações na data atual, quando é executado o fluxo da tabela fato, o cliente01 com SK 01 é carregado na fato.
No dia seguinte(Amanhã) esse cliente01 alterou o endereço, ele recebeu a SK 02, quando a carga da fato ocorrer novamente, ele vai levar a SK 02 para FATO, armazenando não só o histórico na dimensão, mas também na FATO, SK 01 e SK 02 ficam armazenadas.
Exemplo - resumo: se você precisar saber se esse cliente comprava com mais frequência no endereço antigo(SK01) ou no atual(SK02), poderá analisar por meio da versão histórica.
Charles, mas isso você está considerando carga incremental, certo? Se truncar a fato e carregar novamente do jeito que foi feito somente a última versão iria estar presente na fato. Para atribuir os SKs corretos de acordo com a data do evento teria que fazer o que o Irio comentou aqui em cima. Não tenho tanta experiência, mas me parece o certo. Abs
@@Xperiun_ , no caso de truncamento da Fato, existe essa maneira do Irio. Uma segunda opção é na hora de fazer o Lookup na Dimensão, usar no Database lookup com a clausula ORDER BY SK DESC, ou seja, na hora da busca, sempre vai trazer a SK mais recente da dimensão.
@@charleslima7090 mas é justamente isso que não se pode fazer Charles: pegar SEMPRE a versão mais recente da dimensão estaria errado. Acho que estamos confundindo o conceito de SCD aqui. O grande objetivo disso é atribuir a versão correta da dimensão NA FATO. Ou seja, se a dimensão teve uma alteração no dia 01/03/2021, todos os fatos anteriores a esta data devem estar com o SK antigo, e os fatos após esta data com o SK novo. Assim, eu sou obrigado a usar essa data da tabela fato como referência para comparar com a data de início e fim da versão. Não posso confiar na data que está sendo feita a carga, e sim na data que existe na tabela fato (Data da Venda, por exemplo).
Se colocarmos apenas o SK mais novo na fato, como sugerido, não estamos guardando o histórico correto na fato. Estaríamos atribuindo todos os fatos antigos à versão mais nova da dimensão, o que vai contra ao conceito de SCD.
Portanto temos que passar a data de referência da fato para ser comparada com a Data Inicio e Fim das versões da dimensão. E quem faz isso é o componente Dimension Lookup/Update.
Ficou claro?
@@Xperiun_ , agora entendi a questão, nesse caso você está correto, é necessário fazer o Lookup por meio de (código e data) para obter a SK correta.
@@charleslima7090 pois é.. e parece que o componente que eu falei ali já faz isso automático, porque dá pra passar a data de referência da fato. Vou testar em breve
Ele resolviria o problema de mudana de cidade, utilizando order date between as datas de inicio e termino de atualizaão da dim_employee.
something like that
Não encontrei o material usado na aula.
Atualizei agora aqui: powerbiexperience.com/pt/ultima-live/
@@Xperiun_ obg