sql_analytic_model_name (per le viste)

Questa pagina si riferisce al parametro sql_analytic_model_name, che fa parte di una visualizzazione.

sql_analytic_model_name può essere utilizzato anche nell'ambito di un'esplorazione, come descritto nella pagina della documentazione dedicata al parametro sql_analytic_model_name (per le esplorazioni).

Utilizzo

view: view_name {
  sql_analytic_model_name: analytic_model_name ;;
}
Gerarchia
sql_analytic_model_name
Valore predefinito
Nessuno

Accetta
Un nome di modello analitico in-database

Regole speciali
  • I modelli analitici sono supportati solo per le connessioni BigQuery e Snowflake.
  • Il modello analitico a cui fa riferimento sql_analytic_model_name deve essere accessibile all'interno della connessione al database del modello.
  • Se il modello analitico si trova in un database, uno schema, un progetto o un set di dati diverso dal percorso predefinito definito nella connessione al database, devi delimitare il nome del modello analitico.

Definizione

Per le connessioni BigQuery e Snowflake, il parametro sql_analytic_model_name specifica il nome di un modello analitico in-database esistente (un grafico BigQuery o una vista semantica in Snowflake) da utilizzare come base per una vista LookML. In questo modo puoi sfruttare i modelli analitici definiti direttamente nel database, come BigQuery Graph o le viste semantiche in Snowflake.

In questo scenario, l'oggetto modello analitico esiste già nel tuo database ed è gestito dal tuo database; il modello analitico non viene creato, gestito o regolamentato da Looker. Ciò è analogo al modo in cui le normali tabelle del database esposte come viste LookML utilizzando sql_table_name non sono regolate da Looker.

Nel file di visualizzazione LookML, utilizza il parametro sql_analytic_model_name per indirizzare Looker al modello analitico nel tuo database. Poi crea dimensioni e misure di Looker da mappare al modello analitico in modo da poter utilizzare Looker per eseguire query sul modello analitico.

Definizione dell'ambito dei nomi dei modelli analitici

Quando fai riferimento a un modello analitico utilizzando solo il nome del modello analitico, Looker utilizza il percorso di ricerca predefinito (il database e lo schema) che l'amministratore di Looker ha configurato nelle impostazioni per la connessione al database.

Se devi fare riferimento a un modello analitico in un database e uno schema diversi che non si trovano nel percorso di ricerca predefinito dell'utente del database, puoi definire l'ambito del nome del modello analitico utilizzando il formato <database_name>.<schema_name>.<analytic_model_name> per puntare a un altro database o schema:

  • Per fare riferimento a un modello analitico di uno schema diverso, utilizza <schema_name>.<analytic_model_name>.
  • Per fare riferimento a un modello analitico di un altro database, utilizza il <database_name>.<schema_name>.<analytic_model_name> completo.

Per una connessione Google BigQuery, puoi fare riferimento a un modello analitico in un progetto e un set di dati diversi definendo l'ambito del nome del modello analitico utilizzando il formato <project_name>.<dataset_name>.<analytic_model_name>. Per ulteriori informazioni, consulta la pagina della documentazione Connessione a Google BigQuery.

Creare dimensioni e misure LookML in base alla visualizzazione analitica

Dopo aver creato un file di vista e identificato un modello analitico come sql_analytic_model_name, nello stesso file di vista puoi definire dimensioni e misure LookML basate sul modello analitico.

Consulta la documentazione del tuo dialetto per informazioni sulla sintassi SQL corretta da utilizzare per fare riferimento agli elementi nel modello analitico. Ad esempio, per creare una dimensione LookML da un'entità BigQuery Graph, devi utilizzare i trattini bassi per separare gli elementi durante la definizione dell'ambito. Ad esempio, per BigQuery Graph, questa dimensione LookML si basa sulla proprietà location_id nella tabella dei nodi Stores:

  dimension: location_id {
    type: number
    sql: Stores_location_id ;;
  }

Tuttavia, per creare una dimensione LookML basata su una vista semantica Snowflake, devi utilizzare il nome non qualificato di una metrica o di una dimensione.

Esempio

Ecco un esempio di grafico BigQuery denominato StoreGraph definito in un database 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)
  );

Ecco un esempio di visualizzazione LookML basata sul grafico BigQuery StoreGraph, incluse dimensioni e misure mappate al grafico:

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 ;;
  }
}

Aspetti da considerare

Considerazioni per i modelli analitici in Looker

Quando utilizzi modelli di analisi in-database, tieni presente le seguenti considerazioni e limitazioni:

  • Tipi di dati:con i modelli analitici sono supportati solo i seguenti tipi di dati per dimensioni e metriche:

    • Supportato per dimensioni e misure:
      • string
      • number
      • date
      • yesno
    • Supportato solo per le dimensioni:
      • time
      • date_time
  • Misure:

    • Le misure di base devono essere predefinite:le misure di base devono essere predefinite nel modello analitico del database sottostante. Looker non può definire una nuova misura di base eseguendo un'aggregazione (ad esempio type: sum o type: count) su una dimensione di un modello analitico.
    • Sono supportate le misure basate su altre misure:puoi utilizzare il parametro sql di una misura LookML per eseguire calcoli non aggregati che utilizzano misure di base predefinite del modello analitico. Quando crei una misura basata su altre misure, non puoi definirla come tipo di misura aggregata, ad esempio sum o count. Devi definire la nuova metrica come tipo di metrica non aggregata, ad esempio string, number, date o yesno. Vedi il seguente esempio:

      measure: average_order_amount {
        type: number
        sql: ROUND(${total_order_amount} / NULLIF(${count_orders}, 0), 2) ;;
      }
      
  • Join:un'esplorazione la cui visualizzazione di base si basa su un modello analitico non può includere join. Allo stesso modo, una vista basata su un modello analitico non può essere unita a un'esplorazione con una vista di base LookML standard.

  • Join impliciti:le funzionalità che si basano su join impliciti non sono supportate per i modelli analitici. Alcuni esempi di funzionalità che si basano sui join impliciti sono i calendari personalizzati e i campi definiti con type: location, type: distance o type: zipcode.

  • Le seguenti funzionalità non sono supportate con i modelli analitici:

Il modello analitico deve essere accessibile dalla connessione corrente

Quando il parametro sql_analytic_model_name viene utilizzato all'interno di un oggetto view, è possibile fare riferimento a questo oggetto view in un oggetto explore, a sua volta a cui si fa riferimento in un oggetto model. L'oggetto di modello contiene un database connection. Quando fai riferimento a un modello analitico nel parametro sql_analytic_model_name, il modello analitico deve essere accessibile all'interno della connessione associata specificata nel file del modello.

Il database e lo schema predefiniti (o, per Google BigQuery, il progetto di fatturazione e il set di dati) vengono definiti dall'amministratore di Looker quando crea la connessione Looker al database.