autogenerate_primary_keys

Uso

  autogenerate_primary_keys: yes
Hierarquia
autogenerate_primary_keys

- ou -

autogenerate_primary_keys
Valor padrão
Não

Regras especiais

Definição

Quando o parâmetro autogenerate_primary_keys está ativado, o Looker gera uma chave temporária e distinta para uma visualização quando ela não está definida explicitamente no LookML. A chave primária gerada automaticamente permite que agregações simétricas e contagens de um para muitos sejam calculadas corretamente sem mudanças na tabela de banco de dados subjacente. A chave primária é gerada no tempo de execução da consulta e não é mantida entre consultas.

O parâmetro autogenerate_primary_keys é compatível com as visualizações e as análises detalhadas:

  • Para visualizações, se você definir a visualização com autogenerate_primary_keys: yes, o Looker vai gerar uma chave primária para consultas na visualização em que uma chave primária é necessária para evitar a duplicação de linhas. Se você adicionar autogenerate_primary_keys: yes a uma visualização que já tem um campo definido como chave primária, o IDE do Looker vai mostrar um aviso de validação do LookML.
  • Para as análises, se você definir a análise com autogenerate_primary_keys: yes, o Looker vai gerar uma chave primária para cada uma das visualizações necessárias para uma consulta de análise em que uma chave primária é necessária para evitar a duplicação de linhas:

    • O Looker gera chaves primárias apenas para as visualizações na Análise que não têm um campo definido com primary_key: yes. Se uma visualização tiver um campo definido com primary_key: yes, o Looker usará a chave primária da visualização.
    • O Looker gera uma chave primária para a visualização de uma análise somente quando ela é consultada por essa análise. Se a mesma visualização estiver sendo consultada por uma análise detalhada diferente que não foi definida com autogenerate_primary_keys: yes, e a visualização em si não tiver sido definida com autogenerate_primary_keys: yes, o Looker não vai gerar uma chave primária para ela.

Exemplo

Confira uma análise orders que une uma visualização order_items. A análise detalhada é definida com autogenerate_primary_keys: yes:

explore: orders {
  autogenerate_primary_keys: yes
  join: order_items {
    sql_on: ${orders.id} = ${order_items.order_id} ;;
    relationship: one_to_many
  }
}

Para consultas no orders Explorar que exigem agregações simétricas ou cálculos em que as linhas de uma visualização podem ser duplicadas, o Looker gera automaticamente uma chave distinta para as visualizações orders ou order_items.

Informações importantes

Observações sobre o uso de autogenerate_primary_keys: yes:

  • Ativar o autogenerate_primary_keys pode mudar o comportamento das suas consultas atuais. As medidas que o Looker precisava remover das consultas devido a uma chave primária ausente agora serão incluídas nos resultados, o que pode ser uma mudança incompatível com versões anteriores para alguns relatórios.
  • A geração automática de chaves primárias pode aumentar o tempo de consulta devido à computação extra necessária.
  • Quando o Looker gera uma chave primária para uma consulta, ela é uma chave primária temporária de tempo de execução que não pode ser selecionada ou visualizada em uma Análise detalhada.

Suporte a dialetos para autogenerate_primary_keys

A capacidade de usar autogenerate_primary_keys depende do dialeto do banco de dados que sua conexão do Looker está usando. Na versão mais recente do Looker, os seguintes dialetos são compatíveis com autogenerate_primary_keys:

  • SQL padrão do Google BigQuery
  • Amazon Redshift
  • Amazon Redshift 2.1 ou mais recente
  • Amazon Redshift sem servidor 2.1 ou mais recente
  • Google Cloud PostgreSQL
  • Greenplum
  • Microsoft Azure PostgreSQL
  • MySQL 8.0.12 ou mais recente
  • PostgreSQL anterior à versão 9.5