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 vedere solo i campi applicabili ai suoi casi d'uso unici. Per soddisfare le diverse esigenze degli 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 le visualizzazioni perfezionate e le esplorazioni in file modello separati e dedicati, personalizzati in base alle esigenze degli utenti esigenze diverse.
Questa pagina fornisce un esempio di utilizzo dei perfezionamenti LookML per personalizzare un'unica visualizzazione di base e creare esplorazioni distinte per due team diversi all'interno della tua azienda. Sono inclusi anche esempi di occultamento e aggiunta di campi nei contenuti perfezionati.
Ingredienti
- Visualizzazioni di LookML
- Esplorazioni LookML
- File del modello LookML
- Perfezionamenti di LookML
- File LookML generici per il perfezionamento degli alloggi
- Il parametro LookML
include
- Il parametro LookML
hidden
(per i campi) - Facoltativamente, accesso ai modelli per gli spettatori a modelli specifici, configurati da un amministratore di Looker
Prerequisiti
- Un progetto LookML configurato
- Autorizzazioni per sviluppare LookML
- Esperienza nello sviluppo di modelli in LookML, inclusa la familiarità con concetti di LookML più avanzati come affinamenti ed estensioni
Esempio: creare più esplorazioni personalizzate dalla stessa vista di base
Supponi di avere un'esplorazione Vendite contenente dati su clienti, acquisti, spedizione e località. I team di marketing e logistica della tua azienda devono entrambi esplorare questi dati, ma si concentrano su campi diversi all'interno dell'esplorazione Vendite.
Vuoi visualizzare solo i campi utili a ciascun team nel selettore dei campi di esplorazione per semplificare l'esplorazione. 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 correlati ai clienti e alle tendenze di acquisto, mentre l'esplorazione del team di logistica può mostrare i campi relativi a spedizione e località. Puoi anche aggiungere nuovi campi a ogni visualizzazione perfezionata specifici per le esigenze di ciascun team.
Attualmente, il selettore campi per l'esplorazione Vendite mostra tutti i campi della vista Vendite:
Il selettore di campi mostra anche tutti i campi della vista unita Utenti:
Puoi perfezionare la vista sales
in modo da creare due esplorazioni separate contenenti solo i campi di interesse per i team di marketing e logistica seguendo questa procedura:
Crea un nuovo file LookML, in questo esempio un file denominato
base_analysis.lkml
, contenente il codice LookML per l'esplorazione Vendite, basata sulla vistasales
e sulla vista unitausers
. Poiché 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 contenere i perfezionamenti dell'esplorazione Vendite che definirai per ogni team. Puoi assegnare ai file i nomi
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 Analisi vendite per il team di marketing in un nuovo file denominatomarketing_analysis.lkml
. L'istruzioneinclude: "/base/base_analysis.lkml"
rende disponibili i contenuti del filebase_analysis.lkml
per i riferimenti 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 modello separato per ogni team, ad esempio
ecommerce_marketing.model
eecommerce_logistics.model
. Raccogliendo i diversi perfezionamenti in modelli dedicati separati 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 team. Per saperne di più, consulta la pagina della documentazione sui perfezionamenti LookML.Con il parametro
include
, includimarketing_analysis.lkml
nel modelloecommerce_marketing.model
e includilogistics_analysis.lkml
nel modelloecommerce_logistics.model
.Aggiungi eventuali altri perfezionamenti ai file
marketing_analysis.lkml
elogistics_analysis.lkml
in base alle tue esigenze. Ad esempio, puoi nascondere i campi non necessari e aggiungere nuovi campi alle esplorazioni perfezionate per ogni team.
Se vuoi, puoi chiedere a un amministratore di Looker di configurare l'accesso ai modelli per ogni modello dedicato per fornire a team specifici l'accesso a livello di esplorazione.
Nascondendo i campi non necessari dalle esplorazioni perfezionate
Puoi perfezionare la vista sales
come segue nel file marketing_analysis.lkml
per nascondere i gruppi di dimensioni Restituiti, Spediti, Consegnati e Creati, nonché la dimensione Stato, poiché questi campi non sono 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
}
}
Analogamente, puoi utilizzare il seguente codice LookML nel file logistics_analysis.lkml
per nascondere i campi non necessari per il team di logistica (ad esempio Profitto, Prezzo di vendita 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 di logistica non ha bisogno di visualizzare informazioni personali sui clienti, come nomi, età o indirizzi email, puoi anche aggiungere un perfezionamento per la visualizzazione users
unita all'interno del file logistics_analysis.lkml
per nascondere questi campi dall'esplorazione:
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
}
}
Aggiunta di nuovi campi alle esplorazioni perfezionate
Puoi anche creare nuovi campi di interesse per il team di marketing nella visualizzazione sales
perfezionata. Ad esempio, puoi aggiungere i campi Prezzo medio di vendita, Prezzo di vendita totale e Spesa media per utente nella visualizzazione sales
perfezionata:
Puoi utilizzare il seguente 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 ai campi nella visualizzazione unita Utenti. I gruppi di dimensioni Restituito, Spedito, Consegnato e Creato e la dimensione Stato sono nascosti perché il team di marketing non ne ha bisogno.
Analogamente, per il team di logistica puoi creare nuovi campi utili, come Bucket dei tempi di spedizione e Tempo di spedizione medio:
Puoi utilizzare il seguente 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 di logistica creata conterrà i nuovi campi nella vista Vendite oltre a quelli della 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é il team di logistica non ne ha bisogno.
Ora ogni team ha un'esplorazione più personalizzata in base alle proprie esigenze specifiche. Sebbene questo approccio richieda un po' più di configurazione iniziale, mantenendo i dati di base in un unico posto puoi trovarli e utilizzarli più facilmente.