Dúvidas ETL / DW
Estou iniciando os trabalhos de implementação de um DW na minha empresa. Irei ter que aplicar também conceitos de ETL um pouco complexos para essa finalidade. Sei que não foi o foco desse curso mas minhas dúvidas tratam de DW e também de ETL. Fique a vontade se não quiser responder sobre ETL. Seguem:
1. Consigo implementar usando o ETL tanto uma tabela histórica quanto uma tabela "base" (atualizada) onde eu consiga comparar os dados de modo a, caso uma das colunas da tabela de destino possua conteúdo diferente do conteúdo que está sendo trazido, ele gere uma versão nova na tabela histórico e atualize os dados na tabela "base"?
2. Caso eu esqueça de incluir uma ou mais colunas ou mesmo tabelas durante o mapeamento inicial da implementação do DW e, após já ter rodado o processo de extração e carga do ETL no mesmo durante um certo tempo, existe a possibilidade de incluir tais objetos posteriormente trazendo os dados históricos até então para o mesmo?
3. Como posso trabalhar com mais de uma tabela fato? Quanto isso poderia reduzir a performance na execução do cubo? Terei que fazer mais de um datamart ou cubo com perspectivas específicas nesse caso sem que possa cruzar as informações entre as fato e dimensões de ambas as fato?
4. Tenho uma situação que é a seguinte: a origem dos dados são de uma base em MongoDB, ou seja, documentos JSON gerados a partir de arquivos XML, utilizados para a integração entre a empresa e o cliente. Porém, os dados são muito heterogêneos.
As informações são fornecidas por fontes de consultas, ex: RFB, SINTEGRA (27 estados), SERASA, SUFRAMA, ANTT, IBAMA, etc, que possuem como identificador único tanto um CNPJ quanto CPF, CNPJ e RNTRC, CPF e NIT, etc. São retornados dados que serão aproveitados para um estrutura para fins de cadastro (PJ, PF, veículo, imóvel, etc) como também a situação do objeto de pesquisa no respectivo órgão. Também terei que cruzar tais informações com os dados de NFS, NF-e e CT-e (prestador, tomador, fornecedor, cliente, transportador, etc), disponibilizando também dados de produtos, NCM, impostos, etc.
Como poderia modelar isso? Confesso que estou bem perdido nessa definição, visto que, além de não ter ideia de qual estrutura relacional devo montar, também não sei até que ponto é mais benéfico desnormalizar certos dados visando melhorar a performance do BI e até que ponto seria mais viável desmembrar certas estruturas mais independentes.
Obrigado pessoal!
1. Consigo implementar usando o ETL tanto uma tabela histórica quanto uma tabela "base" (atualizada) onde eu consiga comparar os dados de modo a, caso uma das colunas da tabela de destino possua conteúdo diferente do conteúdo que está sendo trazido, ele gere uma versão nova na tabela histórico e atualize os dados na tabela "base"?
2. Caso eu esqueça de incluir uma ou mais colunas ou mesmo tabelas durante o mapeamento inicial da implementação do DW e, após já ter rodado o processo de extração e carga do ETL no mesmo durante um certo tempo, existe a possibilidade de incluir tais objetos posteriormente trazendo os dados históricos até então para o mesmo?
3. Como posso trabalhar com mais de uma tabela fato? Quanto isso poderia reduzir a performance na execução do cubo? Terei que fazer mais de um datamart ou cubo com perspectivas específicas nesse caso sem que possa cruzar as informações entre as fato e dimensões de ambas as fato?
4. Tenho uma situação que é a seguinte: a origem dos dados são de uma base em MongoDB, ou seja, documentos JSON gerados a partir de arquivos XML, utilizados para a integração entre a empresa e o cliente. Porém, os dados são muito heterogêneos.
As informações são fornecidas por fontes de consultas, ex: RFB, SINTEGRA (27 estados), SERASA, SUFRAMA, ANTT, IBAMA, etc, que possuem como identificador único tanto um CNPJ quanto CPF, CNPJ e RNTRC, CPF e NIT, etc. São retornados dados que serão aproveitados para um estrutura para fins de cadastro (PJ, PF, veículo, imóvel, etc) como também a situação do objeto de pesquisa no respectivo órgão. Também terei que cruzar tais informações com os dados de NFS, NF-e e CT-e (prestador, tomador, fornecedor, cliente, transportador, etc), disponibilizando também dados de produtos, NCM, impostos, etc.
Como poderia modelar isso? Confesso que estou bem perdido nessa definição, visto que, além de não ter ideia de qual estrutura relacional devo montar, também não sei até que ponto é mais benéfico desnormalizar certos dados visando melhorar a performance do BI e até que ponto seria mais viável desmembrar certas estruturas mais independentes.
Obrigado pessoal!
Caio
Curtidas 0