Esta página se refere ao parâmetro
sql_analytic_model_name, que faz parte de uma visualização.
sql_analytic_model_nametambém pode ser usado como parte de uma análise, conforme descrito na página de documentação do parâmetrosql_analytic_model_name(para análises).
Uso
view: view_name {
sql_analytic_model_name: analytic_model_name ;;
}
|
Hierarquia
sql_analytic_model_name |
Valor padrão
Nenhuma
Aceita
Um nome de modelo analítico no banco de dados
Regras especiais
|
Definição
Para conexões do BigQuery e do Snowflake, o parâmetro sql_analytic_model_name especifica o nome de um modelo analítico no banco de dados (um gráfico do BigQuery ou uma visualização semântica no Snowflake) que será usado como base para uma visualização da LookML. Isso permite aproveitar modelos analíticos definidos diretamente no banco de dados, como o BigQuery Graph ou as visualizações semânticas no Snowflake.
Nesse cenário, o objeto do modelo analítico já existe no banco de dados e é gerenciado por ele. O modelo analítico não é criado, mantido ou regido pelo Looker. Isso é análogo a como as tabelas de banco de dados regulares expostas como visualizações do LookML usando sql_table_name não são governadas pelo Looker.
No arquivo de visualização do LookML, use o parâmetro sql_analytic_model_name para direcionar o Looker ao modelo analítico no seu banco de dados. Em seguida, crie dimensões e métricas do Looker para mapear o modelo analítico e usar o Looker para consultar esse modelo.
Definir o escopo dos nomes de modelos analíticos
Quando você faz referência a um modelo analítico usando apenas o nome dele, o Looker usa o caminho de pesquisa padrão (o banco de dados e o esquema) que o administrador do Looker configurou nas configurações da conexão de banco de dados.
Se você precisar fazer referência a um modelo analítico em um banco de dados e esquema diferente que não esteja no caminho de pesquisa padrão do usuário do banco de dados, use o formato <database_name>.<schema_name>.<analytic_model_name> para apontar para outro banco de dados ou esquema:
- Para referenciar um modelo analítico de um esquema diferente, use
<schema_name>.<analytic_model_name>. - Para referenciar um modelo analítico de um banco de dados diferente, use o
<database_name>.<schema_name>.<analytic_model_name>completo.
Para uma conexão do Google BigQuery, você pode referenciar um modelo analítico em outro projeto e conjunto de dados definindo o escopo do nome do modelo analítico usando o formato <project_name>.<dataset_name>.<analytic_model_name>. Consulte a página de documentação Conexão do Google BigQuery para mais informações.
Criar dimensões e métricas do LookML com base na sua visualização de análise
Depois de criar um arquivo de visualização e identificar um modelo analítico como o sql_analytic_model_name, no mesmo arquivo de visualização, você pode definir dimensões e métricas do LookML com base no modelo analítico.
Consulte a documentação do seu dialeto para informações sobre a sintaxe SQL adequada a ser usada para se referir a elementos no seu modelo analítico. Por exemplo, para criar uma dimensão da LookML com base em uma entidade de gráfico do BigQuery, use sublinhados para separar os elementos ao definir o escopo. Por exemplo, para o BigQuery Graph, essa dimensão da LookML é baseada na propriedade location_id na tabela de nós Stores:
dimension: location_id {
type: number
sql: Stores_location_id ;;
}
No entanto, para criar uma dimensão da LookML com base em uma visualização semântica do Snowflake, é necessário usar o nome não qualificado de uma métrica ou dimensão.
Exemplo
Este é um exemplo de gráfico do BigQuery chamado StoreGraph, definido em um banco de dados do BigQuery:
CREATE OR REPLACE PROPERTY GRAPH mydataset.StoreGraph
NODE TABLES (
mydataset.Stores AS S,
mydataset.Locations AS L
PROPERTIES(id, name, population, MEASURE(SUM(population)) AS total_population)
)
EDGE TABLES (
mydataset.Stores AS SL
SOURCE KEY (location_id) REFERENCES L (id)
DESTINATION KEY (name) REFERENCES S (name)
);
Este é um exemplo de visualização do LookML com base no gráfico do BigQuery StoreGraph, incluindo dimensões e medidas mapeadas para o gráfico:
view: MyStoreGraphView {
sql_analytic_model_name: StoreGraph ;;
dimension: location_id {
type: number
sql: Stores_location_id ;;
}
dimension: population {
type: number
sql: Locations_population ;;
}
dimension: location_name {
type: string
sql: Locations_name ;;
}
measure: locations_total_population {
type: number
sql: Locations_total_population ;;
}
}
Informações importantes
Considerações sobre modelos analíticos no Looker
Ao usar modelos analíticos no banco de dados, lembre-se das seguintes considerações e limitações:
Tipos de dados:somente os seguintes tipos de dados para dimensões e métricas são compatíveis com modelos analíticos:
- Compatível com dimensões e medidas:
stringnumberdateyesno
- Compatível apenas com dimensões:
timedate_time
- Compatível com dimensões e medidas:
Medidas:
- As medidas de base precisam ser predefinidas:no modelo analítico do banco de dados subjacente. O Looker não pode definir uma nova medida de base realizando uma agregação (como
type: sumoutype: count) em uma dimensão de um modelo analítico. Métricas baseadas em outras métricas são aceitas:use o parâmetro
sqlde uma métrica do LookML para realizar cálculos não agregados que usam métricas básicas predefinidas do modelo analítico. Ao criar uma medida com base em outras, não é possível definir a nova medida como um tipo agregado, comosumoucount. Defina a nova métrica como um tipo não agregado, comostring,number,dateouyesno. Veja o exemplo a seguir:measure: average_order_amount { type: number sql: ROUND(${total_order_amount} / NULLIF(${count_orders}, 0), 2) ;; }
- As medidas de base precisam ser predefinidas:no modelo analítico do banco de dados subjacente. O Looker não pode definir uma nova medida de base realizando uma agregação (como
Mesclas:uma Análise própria cuja visualização de base é baseada em um modelo analítico não pode incluir mesclas. Da mesma forma, uma visualização baseada em um modelo analítico não pode ser unida a uma Análise detalhada que tenha uma visualização de base padrão do LookML.
Junções implícitas:os recursos que dependem de junções implícitas não são compatíveis com modelos analíticos. Alguns exemplos de recursos que dependem de junções implícitas são calendários personalizados e campos definidos com
type: location,type: distanceoutype: zipcode.Os seguintes recursos não são compatíveis com modelos analíticos:
O modelo analítico precisa estar acessível na conexão atual.
Quando o parâmetro sql_analytic_model_name é usado em um objeto view, esse objeto view pode ser referenciado em um objeto explore, que, por sua vez, é referenciado em um objeto modelo. O objeto do modelo tem um connection de banco de dados definido nele. Quando você faz referência a um modelo analítico no parâmetro sql_analytic_model_name, o modelo analítico precisa estar acessível na conexão associada especificada no arquivo modelo.
O banco de dados e o esquema padrão (ou, para o Google BigQuery, o projeto de faturamento e o conjunto de dados) são definidos pelo administrador do Looker quando ele cria a conexão do Looker com seu banco de dados.