sql_analytic_model_name (per le esplorazioni)

Questa pagina si riferisce al parametro sql_analytic_model_name, che fa parte di un'Esplora.

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

Utilizzo

explore: explore_name {
  sql_analytic_model_name: analytic_model_name ;;
}
Gerarchia
sql_analytic_model_name
Valore predefinito
Nessuno

Accetta
Il nome di un modello analitico nel database

Regole speciali
  • I modelli analitici sono supportati solo per le connessioni BigQuery e Snowflake.
  • sql_analytic_model_name per le esplorazioni deve essere utilizzato solo quando la stessa vista può descrivere più modelli analitici nel database.
  • 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 definire l'ambito del nome del modello analitico.

Definizione

Per le connessioni BigQuery e Snowflake, il parametro sql_analytic_model_name specifica il nome di un modello analitico esistente nel database (un grafico BigQuery o una vista semantica in Snowflake) da utilizzare come base per un'esplorazione LookML.

Nella maggior parte dei casi, utilizzi il parametro sql_analytic_model_name (per le viste) per specificare un modello analitico nel file di vista. Poi, in quel file di vista, definisci le dimensioni e le misure LookML basate sul modello analitico nel database. Tuttavia, nei casi in cui il database ha più modelli analitici che possono essere definiti dagli stessi campi LookML, puoi utilizzare il parametro sql_analytic_model_name in un parametro explore.

Quando specifichi un sql_analytic_model_name in un parametro explore, l'esplorazione sostituirà il modello analitico specificato nel file di vista ed eseguirà una query sul modello analitico specificato in sql_analytic_model_name nel parametro explore. In questo caso, l'esplorazione utilizzerà le misure e le dimensioni LookML definite nel file della vista, ma le applicherà al modello analitico specificato nel parametro sql_analytic_model_name del parametro explore.

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) configurato dall'amministratore di Looker nelle impostazioni della 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 da uno schema diverso, utilizza <schema_name>.<analytic_model_name>.
  • Per fare riferimento a un modello analitico da un database diverso, utilizza il formato completo <database_name>.<schema_name>.<analytic_model_name>.

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 sulla connessione Google BigQuery.

Esempio

Di seguito è riportato un esempio di vista LookML denominata MyStoreGraphView basata su un grafico BigQuery StoreGraph in un database BigQuery, incluse le dimensioni e le 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 ;;
  }
}

Supponendo che il database abbia un altro grafo denominato ShopDetailsGraph con gli stessi elementi di StoreGraph, ecco un'esplorazione che sostituisce il valore sql_analytic_model_name nel file di vista MyStoreGraphView. L'esplorazione avrà le stesse dimensioni e misure LookML definite in MyStoreGraphView, ma eseguirà una query sul modello analitico ShopDetailsGraph:

explore: MyStoreGraphView {
  sql_analytic_model_name: ShopDetailsGraph ;;
}

Aspetti da considerare

Considerazioni sui modelli analitici in Looker

Quando utilizzi i modelli analitici nel 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 misure:

    • Supportati per dimensioni e misure:
      • string
      • number
      • date
      • yesno
    • Supportati 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.
    • Le misure basate su altre misure sono supportate: puoi utilizzare il parametro sql di una misura LookML per eseguire calcoli non aggregati che utilizzano misure di base predefinite dal modello analitico. Quando crei una misura basata su altre misure, non puoi definire la nuova misura come tipo di misura aggregata, ad esempio sum o count. Devi definire la nuova misura come tipo di misura 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 vista di base è basata 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 su 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 explore, questo oggetto explore viene a sua volta incluso in un oggetto modello. (La gerarchia in questa pagina mostra questa catena di relazioni.) L'oggetto modello ha una connection al database definita al suo interno. 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.