segunda-feira, 23 de setembro de 2013

Modelagem QlikView - Performance e Usabilidade

“As fontes e os dados terão de ser manipulados dentro do script para entregar o modelo de dados que melhor se adapte, para ambos performance e usabilidade importam.

Concatenar ou usar Tabela de Links?

  Para a maioria dos cenários a Concatenação é a melhor solução. É fácil de gerenciar, fácil de entender e demanda pouco esforço de desenvolvimento para pôr em prática.

  • Concatenação vem com uma chave de restrição.

   Ela não garante a completa  rastreabilidade da transação .

   Selecionando SalesID, não serão correlacionados os registros da tabela Budget. Isto não é rigorosamente verdade, mas pode ser verdade em muitos cenários, e, portanto, poderia ser destacada como uma restrição.

  • Tabelas de Link são um modelo mais tradicional, onde uma tabela de fatos substituto (link) é posto em prática para resolver todas as associações entre as tabelas de fatos e tabelas de dimensões
  • Isso pode parecer à primeira vista como uma solução à prova de bala para utilizar sempre - não é verdade.
  • O positivo das tabelas de link é resolver os relacionamentos como qualquer outra tabela faria. Isso dá a rastreabilidade completa à transação, mesmo dados implicitamente associados via outra tabela fato ficam rastreáveis (ao selecionar a tabela SalesCustomer - você verá os registros da tabela Orçamento associados).

   Inerentemente complexo de construir. Gerar a tabela no link não é tarefa fácil. Há consideravelmente mais verificações a introduzir no código para produzir o modelo.
   A tabela de link funciona como uma tabela desnormalizada, ou seja, que representa as associações de alto nível como a tabela Budget no Mês, ao nível de Grupo exigiria desnormalização para o menor denominador comum com outras fatos. Tabela Sales de Products e Data. Isto dá origem a um potencial grande volume de ligações na tabela de link necessário para resolver o mês e no Grupo correlacionando dados e produtos.
   Outra desvantagem não é exclusivo das Tabelas de Link – é igualmente um desafio ao concatenar tabelas de fatos.

  • Esquemas Estrelas & Snow Flake funcionam melhor no QlikView. Tabelas relacionais tendem a ter ciclos (referências circulares) e, portanto, não funcionam corretamente quando colocados em QlikView.
  • Os quatro principais diretrizes para a modelagem são:
  1. Apontar para um esquema em estrela. Quebrar as tabelas é bom, mas tente mantê-lo ao mínimo, pois pode prejudicar o desempenho por ter muitas tabelas penduradas.
  2. Quando desnormalizar dados (roll up) a fim de reduzir a quebra, pare de desnormalizar quando isto significar replicar registro em milhões de vezes - os ponteiros de memória necessária para armazenar o mesmo valor de uma enorme quantidade se torna significativa
  3. Para soluções de multi-fato, analise os requisitos para ver se uma solução de tabelas concatenadas atende às necessidades. Se o registro de rastreabilidade transação é crucial, ao invés de análise por meio de associação de dimensões comuns, ai sim, analisar se a tabela de ligação serviria. Se nenhum modelo é uma boa opção, um modelo de dados personalizado deve ser montado através de uma análise cuidadosa das necessidades. Ele pode incorporar elementos de ambos link e tabelas concatenadas.
  4. Em ambientes maiores seja com mais volume de dados ou maior complexidade ou a quantidade de usuários concorrentes, o design eficiente num documento QlikView se torna cada vez mais importante. Para este objetivo, por favor utilize as ferramentas à sua disposição de teste de desempenho.

Observações

  • NÃO existe uma melhor arquitetura.
  • A Arquitetura dependente totalmente dos Requisitos
Sistemas, habilidades, segurança, funcionalidade, flexibilidade, tempo, dinheiro e acima de tudo, Requisitos de Negócio!
  • Da mesma forma Melhores Práticas não são Universais
  • Aplicar as melhores práticas de acordo com cada situação

Considerações Finais…

  • Se os usuários finais rejeitarem o seu aplicativo então você falhou, independentemente da sua execução técnica.
  • As necessidades dos usuários finais e a experiência do usuário final deve sempre ditar a sua abordagem para o desenvolvimento de aplicações QlikView, incluindo modelagem de dados.
  • Muitas técnicas de data warehousing são diretamente aplicáveis a modelagem de dados QlikView.
  • Modelagem de dados está em curso há muitos anos e muitas mentes brilhantes têm contribuído para o campo, não precisamos reinventar a roda.

Nenhum comentário:

Postar um comentário