none
Modelação de Tabelas de Factos - Algumas dúvidas RRS feed

  • Pergunta

  • Bom dia, gostava de colocar aqui umas questões impertinentes aquando a modelação do DW. Tenho duvidas.

    1 - Quando temos uma tabela do sistema OLTP que aborda/regista vários assuntos relacionados com os processos organizacionais, como por exemplo: encomendas de clientes, assistência técnica, encomendas a fornecedores, etc... faz sentido criar uma tabela de factos para cada uma das respectivas componentes, ou considera-se uma única tabela de factos, onde teremos um dimensão (tipo de processo) que faz toda esta diferenciação? qual o melhor método?

    2 - Como relacionar dois processos de negocio diferentes, mas que na verdade estão relacionados? Por exemplo: encomendas que dão origem a facturas. duas tabelas de factos (1) encomendas e (2) faturação. Como relacionar estas duas? 

    3 - Atendendo à questão anterior, é possível na modelação multidimensional ter uma relação direta entre duas tabelas de factos?

    4 - Na modelação considera-se normalmente uma chave primaria na tabela de factos degenerada. (ex. Numero de Encomenda, Numero de Fornecedor).  Como ter acesso a esse numero? entrar no detalhe por exemplo de um dia e ver qual é efectivamente o numero dessa factura? Em SSAS?

    Agradeço a vossa ajuda,

    Obrigado.




    terça-feira, 20 de novembro de 2012 15:46

Todas as Respostas

  • Aka, boa noite!

    1: Depende, as analises são muito diferentes uma da outra? Lembre-se que os Data Marts são agrupados por assunto, então se o assunto em questão são serviços e "Encomendas", "Assistencias tecnicas" são apenas tipos de serviço eu colocaria em uma tabela fato só as medições e a descrição do serviço seria uma dimensão.

    2: Seria preciso analisar todo seu ambiente, todo eu caso eu colocaria um campo informando se a mesma foi validada ou não na sua fato, gerando uma diemensão degenerada.

    3: O conceito de fato e dimensão pode ficar meio perdido, mas ja vi algumas modelagens (São bem raras!), aonde uma tabela pode ser ao mesmo tempo uma dimensão para um data mart e uma fato para outro.

    4: Não entendi!


    Fabrizzio A. Caputo
    MCT
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com

    quarta-feira, 21 de novembro de 2012 00:34
    Moderador
  • 4 - Na modelação considera-se normalmente uma chave primaria na tabela de factos degenerada. (ex. Numero de Encomenda, Numero de Fornecedor).  Como ter acesso a esse numero? entrar no detalhe por exemplo de um dia e ver qual é efectivamente o numero dessa factura? Em SSAS? 

    aqui quero referir que eu tenho em todas as minhas tabelas de factos, sempre um ID diferenciador/identificador único de uma linha e tenho outro atributo, que corresponde a um numero de ordem ex. factura, encomenda, compra, etc...como chave degenerada. Acontece que no SSAS, apenas sei utilizar esse atributo para contar, por exemplo de forma distinta quantas encomendas são efectuadas, ou quantas compras, etc. Agora pretendo algo mais especifico, como saber efectivamente qual o numero. Como se de uma dimensão trata-se

    quarta-feira, 21 de novembro de 2012 00:40
  • Aka,

    Acho que estou começando a entender.

    Ok, a dimensão degenerada é muitas vezes conhecida como agrupadora e cai para a fato quando não possui colunas o sulficiente para ser uma dimensão apartada.

    Quanto a criação de um ID de linha, parabens! é uma boa pratica fazer isso e damos o nome de surrogate Key.

    Agora, o que voce precisa especificamente é por exemplo fazer um filtro por este campo que é uma dimensão degenerada?


    Fabrizzio A. Caputo
    MCT
    Certificações:
    Oracle OCA 11g
    MCITP SQL Server 2008 Implementation and Maintenance
    MCITP SQL Server 2008 Developer
    Blog Pessoal: www.fabrizziocaputo.wordpress.com
    Blog Empresa: www.tripletech.com.br/blog
    Twitter: @FabrizzioCaputo
    Email: fabrizzio.antoniaci@gmail.com

    quarta-feira, 21 de novembro de 2012 00:45
    Moderador
  • sim, exactamente, pretendo claramente pegar nessa chave e fazer dela um dimensão que me permita analisar pelo numero de factura. mas não sei como fazer no SSAS.
    quarta-feira, 21 de novembro de 2012 01:00
  • como criar um dimensão, a partir da tabela que dá origem a tabela de factos, sendo que essa dimensão deve actualizar diariamente, mantendo todos os registo que nela ja se encontram inseridos? ou seja, imagina.se que temos uma tabela encomendas, e nela tem o estado (fechada, em transito, pendente, (colunas em branco), etc.. Pretende-se portanto criar uma dimensão apartir desta coluna, em que tenha uma chave substituta, para cada descrição do estado. esta chave de-de manter inalterado ao longo do tempo. pois com os carregamentos esta vai ser inserida na tabela de factos, logo não se pode fazer o drop, nem truncate a tabela de dimensão. Qual a melhor metodologia para o fazer? e como se posse fazer?
    sexta-feira, 23 de novembro de 2012 00:04