Ir para conteúdo principal Pular para conteúdo complementar

Chaves sintéticas

O Qlik Sense cria chaves sintéticas quando duas ou mais tabelas de dados têm dois ou mais campos em comum. Essas chaves são campos anônimos que representam todas as combinações ocorridas da chave composta.

Caso você receba um aviso sobre chaves sintéticas quando carregar os dados, convém revisar a estrutura de dados no visualizador do modelo de dados. Você deve se perguntar se o modelo de dados está ou não correto. Às vezes está correto, mas, na maioria das vezes, a chave sintética está lá devido a um erro no script.

Chaves sintéticas múltiplas geralmente são um sintoma de um modelo de dados incorreto. Contudo, chaves sintéticas baseadas em outras chaves sintéticas é um sinal certo de um modelo de dados incorreto.

Nota de advertênciaQuando o número de chaves sintéticas aumenta, dependendo das quantidades de dados, da estrutura da tabela e de outros fatores, o Qlik Sense pode ou não lidar com elas de forma ágil, o que pode terminar usando uma quantidade excessiva de tempo e/ou de memória. Em tal caso, será preciso retrabalhar seu script e remover todas as chaves sintéticas.
Três tabelas associadas à chave sintética $Syn 1.

Three tables associated with a synthetic key.

Tratamento de chaves sintéticas

Se precisar evitar chaves sintéticas, há diversos modos de resolver isso no script de carregamento de dados:

  • Verifique se apenas os campos que vinculam logicamente as duas tabelas são usados como chaves.

    • Campos como “Comentários”, “Notas” e “Descrição” podem existir em diversas tabelas sem que haja qualquer relação e, portanto, não devem ser usados como chaves.
    • Campos como “Data”, “Empresa” e “Nome” podem existir em diversas tabelas e possuir valores idênticos, embora com funções diferentes (Data do Pedido/Data de Envio, Empresa Consumidora/Empresa Fornecedora). Em tais casos, eles não devem ser usados como chaves.
  • Certifique-se de que os campos redundantes não sejam usados – de que apenas os campos necessários sejam conectados. Por exemplo, se uma data for usada como chave, certifique-se de não carregar ano, mês ou dia_do_mês da mesma data de mais de uma tabela interna.

  • Se necessário, forme suas próprias chaves não compostas, usando normalmente a concatenação de caracteres dentro de uma função do script AutoNumber.

Saiba mais

Esta página ajudou?

Se você encontrar algum problema com esta página ou seu conteúdo - um erro de digitação, uma etapa ausente ou um erro técnico - informe-nos como podemos melhorar!