Immagina di avere molti utenti che condividono un'esplorazione, ma che hanno casi d'uso diversi a seconda del team o della regione. Ogni utente vuole visualizzare solo i campi applicabili ai propri casi d'uso specifici. Per soddisfare le diverse esigenze dei tuoi utenti, puoi utilizzare i perfezionamenti di LookML per personalizzare le viste e le esplorazioni esistenti senza dover modificare il codice LookML originale. Puoi quindi includere queste visualizzazioni e esplorazioni perfezionate in file modello separati e dedicati, personalizzati in base alle diverse esigenze dei tuoi utenti.
Questa pagina fornisce un esempio di utilizzo dei perfezionamenti LookML per personalizzare una singola visualizzazione di base e creare esplorazioni distinte per due team diversi all'interno della tua azienda. Sono inoltre inclusi esempi di come nascondere e aggiungere campi nei contenuti perfezionati.
Ingredienti
- Visualizzazioni LookML
- Esplorazioni LookML
- File modello LookML
- Perfezionamenti LookML
- File LookML generici per i perfezionamenti degli alloggiamenti
- Parametro LookML
include
- Parametro LookML
hidden
(per i campi) - Facoltativamente, accesso del modello a modelli specifici per i visualizzatori, configurato da un amministratore di Looker.
Prerequisiti
- Un progetto LookML configurato
- Autorizzazioni per sviluppare LookML
- Sperimentare lo sviluppo di modelli in LookML, inclusa la familiarità con concetti LookML più avanzati, come i perfezionamenti e le extends
Esempio: creare più esplorazioni personalizzate dalla stessa visualizzazione di base
Supponi di avere un'esplorazione Vendite che contiene dati su clienti, acquisti, spedizioni e località. I team di marketing e logistica della tua azienda devono esplorare questi dati, ma ognuno si concentra su campi diversi all'interno dell'esplorazione Vendite.
Per semplificare l'esplorazione, vuoi visualizzare solo i campi utili per ogni team nel selettore di campi Esplora. A questo scopo, puoi definire due diversi perfezionamenti dell'esplorazione Vendite e della vista sales
su cui si basa. L'esplorazione del team di marketing può mostrare i campi relativi ai clienti e alle tendenze di acquisto, mentre l'esplorazione del team addetto alla logistica può mostrare i campi relativi alla spedizione e alla località. Puoi anche aggiungere nuovi campi a ogni visualizzazione perfezionata specifiche per le esigenze di ogni team.
Attualmente, il selettore campi per l'esplorazione Vendite mostra tutti i campi della vista Vendite:
Il selettore campi mostra anche tutti i campi dalla visualizzazione Utenti unita:
Puoi perfezionare la vista sales
per creare due esplorazioni separate contenenti solo i campi di interesse per i team di marketing e logistica seguendo questi passaggi:
Crea un nuovo file LookML, in questo esempio un file denominato
base_analysis.lkml
, che contiene il LookML dell'esplorazione Vendite, che si basa sulla vistasales
e sulla vistausers
unita. Dal momento che vuoi utilizzare l'esplorazionesales
di base e le viste corrispondenti per creare un'esplorazione personalizzata per ogni team, puoi definire tutti i campi e le proprietà condivisi in un'unica posizione, ad esempio all'interno di un singolo file.# base_analysis.lkml include: "views/sales.view.lkml" include: "views/inventory_items.view.lkml" include: "views/users.view.lkml" explore: sales { join: inventory_items { type: left_outer sql_on: ${sales.inventory_item_id} = ${inventory_items.id} ;; relationship: many_to_one } join: users { type: left_outer sql_on: ${sales.user_id} = ${users.id} ;; relationship: many_to_one } }
Crea due file separati per ospitare i perfezionamenti dell'esplorazione Vendite che definirai per ogni team. Puoi assegnare un nome ai file
marketing_analysis.lkml
elogistics_analysis.lkml
. Il codice LookML, mostrato di seguito, perfeziona l'esplorazionesales
di base come definita nel filebase_analysis.lkml
, mostrato in precedenza, per aggiungere l'etichetta Team di analisi delle vendite per il marketing in un nuovo file denominatomarketing_analysis.lkml
. L'istruzioneinclude: "/base/base_analysis.lkml"
rende disponibili i contenuti del filebase_analysis.lkml
come riferimento all'interno del filemarketing_analysis.lkml
.# marketing_analysis.lkml include: "/base/base_analysis.lkml" explore: +sales { label: "Sales Analysis for Marketing Team" }
Crea un file del modello separato per ogni team, ad esempio
ecommerce_marketing.model
eecommerce_logistics.model
. Ospitando i diversi perfezionamenti in modelli dedicati distinti per ogni team, puoi perfezionare lo stesso insieme di visualizzazioni ed esplorazioni più volte senza sovrascrivere le personalizzazioni che hai apportato per il caso d'uso di un singolo team. Per saperne di più, consulta la pagina della documentazione relativa ai perfezionamenti LookML.Con il parametro
include
, includimarketing_analysis.lkml
nel modelloecommerce_marketing.model
elogistics_analysis.lkml
all'interno del modelloecommerce_logistics.model
.Aggiungi eventuali ulteriori perfezionamenti ai file
marketing_analysis.lkml
elogistics_analysis.lkml
, se necessario. Ad esempio, puoi nascondere i campi non necessari e aggiungere nuovi campi alle esplorazioni perfezionate per ogni team.
Facoltativamente, puoi chiedere a un amministratore di Looker di configurare l'accesso al modello per ogni modello dedicato in modo da fornire a team specifici l'accesso a livello di esplorazione.
Nascondendo i campi non necessari alle esplorazioni perfezionate.
Puoi perfezionare la visualizzazione sales
nel file marketing_analysis.lkml
come segue per nascondere i gruppi di dimensioni Restituiti, Spediti, Consegnati e Creati, nonché la dimensione Stato, in quanto questi campi non vengono utilizzati dal team di marketing:
# marketing_analysis.lkml
include: "/base/base_analysis.lkml"
explore: +sales {
label: "Sales Analysis for Marketing Team"
}
view: +sales
dimension_group: returned {
hidden: yes
}
dimension_group: shipped {
hidden: yes
}
dimension_group: delivered {
hidden: yes
}
dimension_group: created {
hidden: yes
}
dimension: status {
hidden: yes
}
}
Allo stesso modo, puoi utilizzare il seguente LookML nel file logistics_analysis.lkml
per nascondere i campi non necessari al team di logistica (come Profitto, Prezzo scontato e Prezzo di vendita medio):
# logistics_analysis.lkml
include: "/base/base_analysis.lkml"
explore: +sales {
label: "Sales Analysis for Logistics Team"
}
view: +sales {
dimension: profit {
hidden: yes
}
dimension: sale_price {
hidden: yes
}
measure: average_sale_price {
hidden: yes
}
}
Poiché il team per la logistica non ha bisogno di visualizzare informazioni personali sui clienti, ad esempio nomi, età o indirizzi email, puoi anche aggiungere un perfezionamento alla vista users
unita all'interno del file logistics_analysis.lkml
per nascondere questi campi da Esplora:
view: +users {
dimension: age {
hidden: yes
}
dimension: email {
hidden: yes
}
dimension: first_name {
hidden: yes
}
dimension: last_name {
hidden: yes
}
dimension_group: created {
hidden: yes
}
}
Aggiungere nuovi campi alle esplorazioni perfezionate.
Puoi anche creare nuovi campi di interesse per il team di marketing all'interno della vista sales
perfezionata. Ad esempio, puoi aggiungere i campi Prezzo di vendita medio, Prezzo di vendita totale e Spesa media per utente all'interno della raffinata vista sales
:
Puoi utilizzare il seguente codice LookML per aggiungere questi campi alla vista sales
perfezionata nel file marketing_analysis.lkml
:
# marketing_analysis.lkml
view: +sales {
measure: average_sale_price {
type: average
value_format_name: usd
sql: ${sale_price} ;;
drill_fields: [detail*]
}
measure: total_sale_price {
type: sum
value_format_name: usd
sql: ${sale_price} ;;
drill_fields: [detail*]
}
measure: average_spend_per_user {
type: number
value_format_name: usd
sql: 1.0 * ${total_sale_price} / NULLIF(${users.count},0) ;;
drill_fields: [detail*]
}
}
L'esplorazione di marketing che hai creato conterrà i nuovi campi nella visualizzazione Vendite, oltre a quelli nella vista Utenti unita. I gruppi di dimensioni Restituito, Spedito, Consegnato e Creato e la dimensione Stato sono nascosti in quanto non sono necessari per il team di marketing.
Analogamente, per il team di logistica, puoi creare nuovi campi che lo saranno utili, come Intervalli di tempo di spedizione e Tempo medio di spedizione:
Puoi utilizzare il seguente codice LookML per aggiungere questi campi alla vista sales
perfezionata nel file logistics_analysis.lkml
:
# logistics_analysis.lkml
view: +sales {
dimension: shipping_time_buckets {
case: {
when: {
sql: ${shipping_time} <= 7 ;;
label: "One Week"
}
when: {
sql: ${shipping_time} > 7 AND ${shipping_time} <= 14 ;;
label: "Two Weeks"
}
when: {
sql: ${shipping_time} > 14 ;;
label: "Over Two Weeks"
}
else: "Note Shipped"
}
}
measure: average_shipping_time {
type: average
value_format_name: decimal_4
sql: ${shipping_time} ;;
}
}
L'esplorazione della logistica che hai creato conterrà i nuovi campi nella visualizzazione Vendite, oltre a quelli nella vista Utenti unita. I campi Profitto, Prezzo di vendita e Prezzo di vendita medio della visualizzazione Vendite e i campi Età, Email, Nome, Cognome e Creato dell'esplorazione Utenti sono nascosti, perché non sono necessari per il team di logistica.
Ogni team ora dispone di un'esplorazione più personalizzata in base alle sue esigenze specifiche. Anche se questo approccio prevede un po' più di configurazione all'inizio, mantenendo i dati principali in un unico posto, è più facile trovarli e utilizzarli.