Num dos meus artigos anteriores, falámos sobre chaves sintéticas (chaves sintéticas no QlikView – Simplificado). Discutimos porque as chaves sintéticas são geradas e chegámos à conclusão de que se tivermos várias chaves sintéticas no nosso modelo de dados, poderia ser o resultado de um modelo de dados incorrecto e gerar resultados inesperados. Também vimos algumas formas de eliminar chaves sintéticas e melhorar o nosso modelo de dados.
Este artigo começa onde terminámos o nosso último artigo. Discutiremos duas técnicas adicionais para eliminar chaves sintéticas e otimizar o nosso modelo de dados na nossa aplicação QlikView. Estas duas técnicas são: –
- Concatenação
- Tabela de ligação / chaves
Percebamos estas duas técnicas em detalhe usando exemplos:
Analise a tendência de vendas ao longo dos anos com conjuntos de dados de transações interanuais
Uma empresa orientada para vendas tem conjuntos de dados de transações ano após ano (um conjunto de dados para cada ano) com um ou dois campos diferentes (devido a mudanças ou falhas no sistema base) mas o resto dos campos são semelhantes. A empresa deseja mostrar as tendências de vendas interanuais utilizando estes conjuntos de dados.
Nesta fase, vamos carregar todos os conjuntos de dados interanuais no QlikView. Conforme esperado, O QlikView cria chaves sintéticas para unir estas tabelas, uma vez que estas tabelas têm múltiplos campos comuns. Pode ver o modelo de dados com chave sintética abaixo. Agora, para eliminar a chave sintética, não podemos renomear / eliminar todos estes campos porque são importantes e estão relacionados entre si. Aqui, precisamos de todos os campos numa tabela para mostrar as tendências anuais, a sazonalidade mensal ao longo do ano e muitas outras coisas. Como sabe, O QlikView concatena / combina automaticamente tabelas se tiverem a mesma granularidade e colunas. Porém, no nosso cenário, algumas das colunas são diferentes. Aqui precisamos forçar a concatenação usando CONCATENAR e combinar os dados numa única tabela (Ver Snapshot à direita).

A seguir, também pode ver que na tabela SALES, tanto Employee_Type como Branch_Type aparecem com os seus valores disponíveis e o número total de registos é N1 (número de registos em 2010) + N2 (número de registos em 2011).

de forma similar, se a granularidade e as colunas nas tabelas forem as mesmas, então podemos usar Concatenar, que irá fundir as tabelas numa só e a tabela resultante terá a soma das linhas das duas tabelas.
Analise o desempenho de vendas do funcionário em comparação com os seus objetivos (e analise o desempenho em várias dimensões como produto, ano de entrada, região):
Para realizar isso contamos com cinco tabelas, nas quais duas são tabelas de fatos e as outras são de dimensão"Dimensão" É um termo usado em várias disciplinas, como a física, Matemática e filosofia. Refere-se à extensão em que um objeto ou fenômeno pode ser analisado ou descrito. Em física, por exemplo, fala-se de dimensões espaciais e temporais, enquanto em matemática pode se referir ao número de coordenadas necessárias para representar um espaço. Compreendê-lo é fundamental para o estudo e... (a seguir é mostrada a estrutura da tabela).

Acima pode ver que as tabelas, “Vendas” e “Plano” têm três campos comuns e as tabelas de Dimensão também estão associadas a ambas as tabelas de fatos.
Agora, se carregarmos todas estas tabelas diretamente no QlikView, resultará num modelo de dados com chaves sintéticas (captura de tela abaixo).

Dado que as tabelas de fatos não têm colunas semelhantes, não podemos optar pela concatenação. Ao mesmo tempo, também precisamos delas para a nossa análise. Agora, para eliminar a chave sintética neste modelo de dados, devemos usar LINK mesa. Liga duas ou mais tabelas de fatos removendo todos os campos comuns das tabelas originais e colocando-os numa nova tabela (chamada tabela de ligações). A nova tabela de ligações contém todas as combinações possíveis de valores para o conjunto de campos através de uma chave única e está associada às tabelas originais.
Em palavras simples, podemos dizer que a tabela de ligações substitui a tabela de chaves sintéticas e contém todas as combinações dos campos-chave que são comuns às tabelas de factos. Também deveríamos criar uma nova chave compostao "chave composta" é um padrão rítmico utilizado na música afro-caribenha, especialmente em estilos como o son, a salsa e o merengue. Caracteriza-se por uma combinação de tempos binários e ternários, o que gera uma sensação de complexidade rítmica. O seu uso na percussão, especialmente em instrumentos como o cajón e os timbales, adiciona dinamismo e riqueza sonora às composições, tornando-se um elemento fundamental destas... para conectar as três tabelas (tabelas de dois factos e tabela de ligações) y eliminar los campos comunes de las tablas de hechos.
Reglas para definir la tabla de enlaces: –
- Cree una clave basada en campos comunes de tablas de hechos y rompa todas las demás asociaciones mediante comentarios o cambio de nombre.
- Asegúrese de que todas las combinaciones que existen en ambas tablas de hechos estén disponibles en la tabla de vínculos creada; pelo contrário, pode causar a pérdida de algunos registros.
- La tabla de vínculos debe tener registros distintos.
Ahora veamos los métodos para desarrollar el modelo de datos usando Link Table: –
Paso 1 Cargue la tabla de hechos, clave de formulario para todos los campos comunes y comente todos los campos comunes.
Paso 2 Cree la tabla de vínculos cargando los valores distintos de las tablas de hechos

Paso 3 Carregar outras tabelas de dimensões.

Paso 4 Recarregue e teríamos o seguinte modelo de dados sem uma chave sintética.

Acima, pode ver um modelo de dados com tabela de ligação e tem todos os campos comuns das tabelas de factos.
Tabela de ligação Vs concatenar
Nos exemplos acima, observamos ambos os cenários, onde deveríamos ir com a tabela CONCATENATION ou LINK. Ambos os métodos têm as suas próprias vantagens. Vamos ver alguns destes:
- Se a granularidade e os campos nas tabelas de factos forem os mesmos, deveríamos optar por Concatenar, o que irá fundir as tabelas numa só. Quando estes forem diferentes e estiverem ligados a diferentes dimensões, usaremos a tabela LINK.
- Com Tabelas de Ligações pode manter um modelo de dados mais compreensível. Por outro lado, Concatenar es un enfoque simplista con un rendimiento excelente para manejar un gran volumen de datos.
- La elección también depende de qué tipo de análisis queremos realizar y qué modelo será suficiente para nuestro propósito.
Nota final: –
Como mencionado anteriormente, varias claves sintéticas generalmente reflejan un modelo de datos incorreto. Habíamos analizado algunos métodos para eliminar claves sintéticas en el pasado. Neste artigo, analizamos particularmente dos métodos: tabla LINK y concatenación. Ambos métodos tienen sus propias ventajas y aplicaciones. La elección del método debe depender de los requisitos comerciales y del tipo de análisis requerido de los datos.
Esta série foi útil para você? Hemos simplificado un tema complejo: claves sintéticas y hemos intentado presentarlo de una manera simple y comprensible. Si necesita más ayuda sobre el modelo de datos y claves sintéticas, sinta-se à vontade para fazer suas perguntas através dos comentários abaixo.


