none
Dimensão com tabela auto-referenciada RRS feed

  • Pergunta

  • Bom dia,

     

    Eu gostaria de saber se é possível criar uma dimensão a partir de uma tabela com auto-referência.

     

    Eu tenho uma tabela de contas contábeis e os níveis podem ser variáveis, ou seja, é possível que uma conta tenha uma ou mais contas superiores a ela.

     

    O que eu gostaria de saber é se posso fazer isso recursivamente ou de outra forma qualquer que me permita acessar todos os níveis de uma determinada conta.

    sexta-feira, 19 de setembro de 2008 14:18

Respostas

Todas as Respostas

  • Olá,

     

    É possível sim. Esse tipo de situação é muito comum e você pode resolvê-la de duas formas:

     

    A primeira é utilizar uma técnica de modelagem alternativa conhecida com Bridge Table. Ralph Kimball demonstra essa técnica. Também possuo um artigo que a utiliza. Vale a pena lembrar que aqui estamos falando de modelagem e não de ferramentas OLAP.

     

    A outra alternativa é utilizar uma implementação proprietária (o que comumemente é mais usual) e o próprio Analysis Services já dispõe de meios de tratar tabelas com auto-relacionamento de forma a representar hierarquias não balanceadas.

     

    [ ]s,

     

    Gustavo

     

    sexta-feira, 19 de setembro de 2008 14:32
  • Levogiro,

     

    Realmente as orientações que o Gustavo postou são interessantes, acredito que a sua opção é mais prática, por outro lado é muito legal poder estudar as técnicas criadas por Ralph Kimball o pai do DW!!!

    sexta-feira, 19 de setembro de 2008 17:25
  • Gustavo,

     

    Muito obrigado pelas dicas. Vou fazer alguns testes e responderei qual dos dois eu usei.

     

    Levogiro.

    segunda-feira, 22 de setembro de 2008 16:30
  • Levogiro,

     

    Ok, ficamos no aguardo!!!

    segunda-feira, 22 de setembro de 2008 16:38
  • Gustavo,

     

    Eu fiz a parte da modelagem de dados. Entretanto, como devo proceder para montar a dimensão ?

     

    Você conhece algum material impresso ou mesmo eletrônico que me mostre esta implementação ?

     

    Grato,

     

    Levogiro.

    quarta-feira, 24 de setembro de 2008 12:38
  • Bom dia,

     

    Consegui modelar a dimensão utilizando auto-referência na modelagem de dados e criando uma dimensão do tipo "parent-child".

     

    Ficou perfeito. Entretanto dentro da mesma tabela existe um atributo que agrupa os registros de conta contábil, desta forma:

     

    Visao Denominação 01

       Conta 01

          Conta 0101

          Conta 0102

       Conta 02

          Conta 0201

          Conta 0202

    Visão Denominação 02

       Conta 01

          Conta 0101

          Conta 0102

       Conta 02

          Conta 0201

          Conta 0202

     

    Minha pergunta é: eu posso criar uma hierarquia em uma dimensão com auto-referência? Até agora meus testes não tiveram sucesso.

     

    Grato,

     

    Levogiro.

    terça-feira, 7 de outubro de 2008 15:11