Perfezionamenti LookML

Si tratta di un argomento avanzato che presuppone che il lettore abbia una solida conoscenza di LookML.

Panoramica

Con i perfezionamenti LookML, puoi adattare una vista o un'esplorazione esistente senza modificare il file LookML che lo contiene. Si tratta dell'opzione ideale per:

Ad esempio, se nel tuo progetto è presente il seguente file di vista:

view: flights {
  sql_table_name: flightstats.accidents ;;

  dimension: id {
    label: "id"
    primary_key: yes
    type: number
    sql: ${TABLE}.id ;;
  }
}

Puoi perfezionare la vista flights come mostrato di seguito: utilizza il parametro view con lo stesso nome della vista, ma aggiungi un segno più (+) davanti al nome per indicare che si tratta di un perfezionamento di vista esistente.

Questo perfezionamento aggiunge una dimensione air_carrier alla vista flights esistente:

view: +flights {
  dimension: air_carrier {
    type: string
    sql: ${TABLE}.air_carrier ;;
  }
 }

Questo perfezionamento può essere inserito in qualsiasi file LookML del progetto, ad esempio un file modello, una vista o un file LookML dedicato. Consulta la sezione Utilizzo dei perfezionamenti nel tuo progetto LookML per scoprire come funziona.

Il perfezionamento combinato con il LookML originale ha il risultato finale come se fosse il LookML originale per la vista:

view: flights {
  sql_table_name: flightstats.accidents ;;

  dimension: id {
    label: "id"
    primary_key: yes
    type: number
    sql: ${TABLE}.id ;;
  }

  dimension: air_carrier {
    type: string
    sql: ${TABLE}.air_carrier ;;
  }
}

Nell'interfaccia utente di Looker, gli utenti vedono la dimensione Air Carrier, proprio come se avessi aggiunto la dimensione al file della vista originale.

Per informazioni più dettagliate sull'implementazione, consulta l'esempio riportato di seguito.

Perfezionamenti rispetto alle estensioni

Looker supporta anche l'estensione di oggetti LookML. L'estensione è utile quando vuoi creare una nuova copia di una vista esistente o di Esplora per potervi aggiungere nuovi oggetti. Ad esempio, puoi creare una vista di base che definisce tutti i tuoi campi e poi creare più nuove viste che estendono la vista di base. Queste nuove viste possono essere modificate per nascondere determinati campi nella visualizzazione di base o per modificare le definizioni o le etichette dei campi della visualizzazione di base.

I perfezionamenti sono utili quando vuoi modificare una vista o un'esplorazione esistente con alcune modifiche o regolazioni a determinati oggetti, ma non vuoi creare copie della vista o della funzionalità Esplora. I perfezionamenti sono ideali per le situazioni in cui non è possibile o non vuoi modificare la vista di base o l'esplorazione, nonché per le situazioni in cui la creazione di una nuova vista o dell'esplorazione richiede modifiche di ampio impatto ad altri riferimenti LookML. Per un esempio di questo caso d'uso, consulta la sezione Esempio in questa pagina.

Per la maggior parte dei casi d'uso, i perfezionamenti sono un'alternativa più semplice e chiara a extends.

Gli sviluppatori LookML avanzati potrebbero voler utilizzare il parametro extends all'interno di un perfezionamento LookML. Per ulteriori informazioni, consulta la sezione I perfezionamenti possono contenere estensioni in questa pagina.

I perfezionamenti sostituiscono la maggior parte dei parametri

È importante notare che nella maggior parte dei casi un perfezionamento sostituirà le impostazioni originali di un oggetto. Nell'esempio seguente, la vista originale ha una dimensione nascosta (hidden: yes):

view: faa_flights {
  dimension: carrier {
    hidden: yes
  }
}

In un altro file è stato perfezionato la dimensione con hidden: no:


include: "/views/faa_flights.view.lkml"

view: +faa_flights {
  dimension: carrier {
    hidden: no
  }
}

L'ultimo perfezionamento ha la precedenza, pertanto viene applicato hidden: no e la dimensione viene mostrata nella vista finale.

In alcuni casi i perfezionamenti sono additivi anziché di override. Per ulteriori informazioni, consulta la sezione Alcuni parametri sono additivi di questa pagina.

Alcuni parametri sono additivi

In molti casi, se il perfezionamento contiene lo stesso parametro dell'oggetto che viene perfezionato, l'affinamento sostituirà i valori del parametro dell'oggetto raffinato.

Tuttavia, i perfezionamenti possono essere additivi per alcuni parametri, il che significa che i valori dell'oggetto base vengono utilizzati insieme ai valori dell'oggetto raffinato.

I seguenti parametri sono additivi:

Ad esempio, ecco una vista che ha una dimensione name con un parametro link:

view: carriers {
  sql_table_name: flightstats.carriers ;;

  dimension: name {
    sql: ${TABLE}.name ;;
    type: string
    link: {
      label: "Google {{ value }}"
      url: "http://www.google.com/search?q={{ value }}"
      icon_url: "http://google.com/favicon.ico"
    }
  }
}

Ed ecco un perfezionamento della vista carriers, con una dimensione name che ha valori diversi per il parametro link:


include: "/views/carriers.view.lkml"

view: +carriers {
  label: "Refined carriers"

  dimension: name {
    sql: ${TABLE}.name ;;
    type: string
    link: {
      label: "Dashboard for {{ value }}"
      url: "https://docsexamples.dev.looker.com/dashboards/307?Carrier={{ value }}"
      icon_url: "https://www.looker.com/favicon.ico"
    }
  }
}

Nella raffinata vista carriers, i due parametri link sono cumulative, quindi la dimensione name avrà entrambi i link. In Esplora, la dimensione è simile a questa:

I perfezionamenti vengono applicati in ordine

Un oggetto può essere perfezionato più volte e in più posizioni, il che consente agli sviluppatori di Looker di utilizzare i perfezionamenti in molti modi creativi. Ciò significa, tuttavia, anche che gli sviluppatori devono essere molto consapevoli dell'ordine in cui vengono applicati i perfezionamenti:

  • All'interno di un progetto, i perfezionamenti vengono applicati nell'ordine in cui sono inclusi i relativi file. I perfezionamenti dei file inclusi per ultimi sostituiranno i perfezionamenti dei file inclusi in precedenza.
  • All'interno di un singolo file, i perfezionamenti vengono applicati riga per riga verso il basso. I perfezionamenti con il numero di riga più alto vengono applicati per ultimi e sostituiranno eventuali perfezionamenti precedenti in caso di conflitti.

Puoi utilizzare il flag final: yes per verificare che i perfezionamenti vengano applicati nell'ordine previsto. Per informazioni dettagliate, consulta la sezione Utilizzo di final: yes per evitare ulteriori perfezionamenti.

Ad esempio, nel seguente file della vista sono presenti due perfezionamenti della vista faa_flights. Il primo perfezionamento nasconde una dimensione (hidden: yes), mentre il secondo mostra la dimensione (hidden: no). In caso di conflitti come questo, il perfezionamento più in basso nel file ha la precedenza:

include: "//e_faa_original/views/faa_flights.view.lkml"

view: +faa_flights {
  dimension: carrier {
    hidden: yes
  }
}

view: +faa_flights {
  dimension: carrier {
    hidden: no
  }
}

La logica è simile per l'inclusione di più file in un progetto: i perfezionamenti nell'ultimo file elencato in inclusi hanno la precedenza. Ad esempio, se un file modello include i seguenti file:

include: "/refinements/distance_analysis.lkml"
include: "/refinements/finishing_touches.lkml"

Prima vengono applicati tutti i perfezionamenti nel file distance_analysis.lkml, poi vengono applicati eventuali perfezionamenti nel file finishing_touches.lkml. In caso di conflitti, i perfezionamenti nell'ultimo file, finishing_touches.lkml, avranno la precedenza.

Poiché i perfezionamenti sfruttano l'ordine dei perfezionamenti, non dovresti utilizzare caratteri jolly nei tuoi elementi inclusi se vuoi utilizzare i perfezionamenti. Come prassi generale, si consiglia di evitare di utilizzare comunque caratteri jolly con le viste, soprattutto se il progetto ha un numero elevato di file di viste o se il progetto utilizza tabelle derivate permanenti (PDT). Tuttavia, con i perfezionamenti in particolare, l'utilizzo di caratteri jolly nei elementi inclusi non è consigliato.

Utilizzo di final: yes per evitare ulteriori perfezionamenti

Come descritto in precedenza, lo stesso oggetto può essere perfezionato più volte in più posizioni e l'ultimo perfezionamento sostituirà tutti i perfezionamenti precedenti.

Se hai un perfezionamento che vuoi considerare come perfezionamento finale per la vista o per l'esplorazione, puoi aggiungere il flag final: yes al perfezionamento. L'IDE di Looker restituirà un errore LookML se sono presenti perfezionamenti che verrebbero applicati dopo questo perfezionamento finale o se uno sviluppatore cerca di aggiungere un nuovo perfezionamento che verrà applicato dopo questo perfezionamento finale. Ad esempio, il secondo perfezionamento in questo file di vista creerebbe un errore LookML perché il perfezionamento precedente ha il flag final: yes:

include: "//e_faa_original/views/faa_flights.view.lkml"

view: +faa_flights {
  final: yes
  dimension: carrier {
    hidden: yes
  }
}

view: +faa_flights {
  dimension: carrier {
    hidden: no
  }
}

Aggiungere il flag final: yes a un perfezionamento è un buon modo per verificare che i perfezionamenti vengano applicati nell'ordine previsto.

I perfezionamenti possono contenere estensioni

Gli sviluppatori LookML avanzati potrebbero voler utilizzare un parametro extends all'interno di un perfezionamento LookML, che aggiunge l'oggetto esteso all'oggetto che viene perfezionato.

Per riepilogare il comportamento di extends e dei perfezionamenti:

  • Quando un oggetto viene esteso, viene creata una nuova copia dell'oggetto su cui si basa. Ad esempio, puoi creare una vista di base che definisce tutti i tuoi campi e poi creare più nuove viste che estendono la vista di base. Ciascuna di queste nuove viste incorpora una copia della vista di base, da cui uno sviluppatore può aggiungere diversi campi, filtri o altre proprietà per modificare i contenuti della vista di base. L'idea è che inizi con un oggetto di base e poi lo utilizzi in modi diversi in molti altri oggetti. Per una discussione completa sull'utilizzo degli estensioni, consulta la pagina Riutilizzo del codice con estensioni.
  • La definizione di un oggetto aggiunge un livello di modifiche all'oggetto, ma, a differenza dell'estensione, il perfezionamento non crea più copie dell'oggetto. L'idea è quella di basarsi su un oggetto di base senza modificare il LookML originale.

Come esempio di utilizzo standard dei perfezionamenti, ecco un'esplorazione chiamata orders e +orders che la perfeziona:

explore: orders {
  view_name: orders
  # other Explore parameters
}

explore: +orders {
  label: "Orders Information"
  # other Explore parameters to build on the original Explore
}

Inoltre, puoi aggiungere un perfezionamento che include un extends. Partendo dall'esempio, ecco la stessa orders Explore. Inoltre, esiste un'esplorazione di base chiamata users_base e ora il perfezionamento di +orders include un parametro extends che inserisce users_base:


explore: users_base {
  view_name: users
  extension: required
  # other Explore parameters
}

explore: orders {
  view_name: orders
  # other Explore parameters
}

explore: +orders {
  label: "Orders Information"
  extends: [users_base]
  # other Explore parameters to build on the original Explore
}

La cosa speciale qui è che il perfezionamento di +orders include un extends al suo interno. Il risultato è che +orders visualizzazione estenderà l'esplorazione di users_base.

Come Looker implementa extends nei perfezionamenti

L'estensione di un oggetto all'interno di un perfezionamento è un concetto avanzato LookML. Prima di utilizzare extends in un perfezionamento, è necessario capire a fondo quanto segue:

  • Come Looker implementa extends: se un elemento LookML viene definito sia nell'oggetto extensioned che nell'oggetto extensioning, viene utilizzata la versione nell'oggetto che viene esteso, a meno che il parametro non sia additive. Per maggiori dettagli, consulta la pagina della documentazione dedicata al riutilizzo del codice con estensioni.
  • Come Looker implementa i perfezionamenti: se un elemento LookML è definito in più perfezionamenti, l'ultimo perfezionamento sostituisce i perfezionamenti precedenti. Per maggiori dettagli, consulta la sezione I perfezionamenti vengono applicati in ordine in questa pagina.

Infine, è importante capire in che modo Looker combina questi principi per implementare extends, utilizzato nei perfezionamenti. Ecco l'ordine che Looker implementa, con ogni passaggio che sostituisce la precedente in caso di conflitto:

  1. Valori di extends specificati nell'oggetto
  2. Valori di extends specificati nei perfezionamenti dell'oggetto
  3. Valori derivanti dall'oggetto
  4. Valori perfezionati dall'oggetto

Ecco un esempio che segue il valore del parametro label in ogni passaggio dell'implementazione:

explore: orders_base {
  label: "Orders Base"
  view_name: orders
  extension: required
}

explore: users_base {
  label: "Users Base"
  view_name: users
  extension: required
}

explore: orders {
  label: "Orders"
  extends: [orders_base]
}

explore: +orders {
  label: "Orders Refined"
  extends: [users_base]
}

Ecco come Looker implementa il valore di label per Explore di orders in questo esempio:

  1. Valori provenienti dalla proprietà extends specificata nell'oggetto. Poiché l'esplorazione orders ha un parametro extends, Looker inizia con gli elementi LookML dell'oggetto che viene esteso, che in questo caso è orders_base Explore. A questo punto, il valore di label è "Ordini di base".
  2. Valori provenienti da extends specificati nei perfezionamenti dell'oggetto. Poiché orders ha un perfezionamento e il perfezionamento ha un parametro extends, Looker applica quindi gli elementi LookML dell'estensione del perfezionamento, che in questo caso è users_base Explore. A questo punto, il valore di label è "Users Base".
  3. Valori dell'oggetto. Ora che tutte le estensioni sono state corrette, Looker applica gli elementi dell'oggetto che estende, che in questo caso è orders Explore. In caso di conflitti, vince l'oggetto che si estende. Quindi, il valore di label è "Ordini".
  4. Valori dei perfezionamenti dell'oggetto. Infine, Looker applica gli elementi di qualsiasi perfezionamento dell'esplorazione di orders. In caso di conflitti, vince l'oggetto di perfezionamento. Quindi, il valore di label è "Ordini raffinati".

Il perfezionamento extends è additivo

Come descritto nella sezione Parametri di sostituzione dei perfezionamenti in questa pagina, i perfezionamenti in genere sostituiscono le impostazioni originali di un oggetto. Questo non vale per il parametro extends. Quando extends viene utilizzato in un perfezionamento, il valore nel parametro extends viene aggiunto all'elenco di elementi esteso nell'oggetto originale o nei perfezionamenti precedenti, se presenti. In caso di conflitti, viene data la priorità all'ultimo elemento della catena di estensioni.

Ad esempio, ecco un'esplorazione di base denominata orders_base e un'esplorazione di orders che estende la base. Inoltre, è presente un users_base Esplora e il perfezionamento di +orders che estende users_base:

explore: orders_base {
  view_name: orders
  extension: required
  # other Explore parameters
}

explore: users_base {
  view_name: users
  extension: required
  # other Explore parameters
}

explore: orders {
  extends: [orders_base]
  # other Explore parameters to build on the base Explore
}

explore: +orders {
  extends: [users_base]
  # other Explore parameters to build on the base Explores
}

La funzionalità Esplora di orders estende la orders_base, quindi i perfezionamenti di +orders aggiungono users_base all'elenco di extends. Il risultato è che +orders Explore estenderà sia orders_base che users_base, come se fosse il LookML originale di Explore:

explore: orders {
  extends: [orders_base, users_base]
}

In caso di conflitti, viene data la priorità all'ultimo elemento della catena di estensioni. In questo esempio, gli elementi del criterio users_base sostituiscono eventuali elementi in conflitto in orders_base.

Il concetto di estendere più di un oggetto alla volta è descritto nella pagina della documentazione Riutilizzare il codice con estensioni.

Un'ultima nota: in questo esempio l'ordine dei parametri explore non è importante. Tuttavia, nel caso di più perfezionamenti per lo stesso oggetto, l'ordine dei perfezionamenti è determinante. Come descritto nella sezione Perfezionamenti in ordine su questa pagina, l'ultimo perfezionamento di un file sostituisce i perfezionamenti precedenti.

Utilizzo dei perfezionamenti nel progetto LookML

Di seguito sono riportati i passaggi generali per perfezionare le visualizzazioni e le esplorazioni del progetto:

  1. Identifica la vista o l'esplorazione che vuoi perfezionare.
  2. Decidi dove vuoi posizionare i perfezionamenti. Puoi aggiungere perfezionamenti in qualsiasi file LookML esistente o creare file LookML separati per i tuoi perfezionamenti. Consulta la procedura per creare un file di test di dati nella pagina Documentazione di altri file di progetto per un esempio di creazione di file LookML generici.
  3. Utilizza il parametro include per incorporare i perfezionamenti nel tuo modello:
    • Nel file in cui scrivi i perfezionamenti, devi includere i file del LookML che stai perfezionando. L'IDE di Looker ti avvisa se cerchi di perfezionare un oggetto non incluso.
    • Nel file modello, includi i file in cui sono definiti i perfezionamenti. Puoi combinare file e utilizzarli in modi molto creativi. Per informazioni dettagliate, consulta la sezione Utilizzo dei perfezionamenti per aggiungere livelli al modello in questa pagina.

Esempio

Il perfezionamento degli oggetti LookML è un modo semplice per adattare visualizzazioni ed esplorazioni senza dover modificare il LookML originale. Ciò è particolarmente utile quando le visualizzazioni e le esplorazioni sono di sola lettura nel progetto, ad esempio con file importati da altri progetti. Ecco un esempio di perfezionamento di un'esplorazione.

Ecco il LookML per l'esplorazione di aircraft:


explore: aircraft {
  join: aircraft_types {
    type: left_outer
    sql_on: ${aircraft.id} = ${aircraft_types.id} ;;
    relationship: many_to_one
  }

  join: aircraft_engine_types {
    type: left_outer
    sql_on: ${aircraft.id} = ${aircraft_engine_types.id} ;;
    relationship: many_to_one
  }
}

Questa esplorazione contiene diverse viste, ognuna delle quali ha molte dimensioni.

Ora, un altro progetto LookML denominato e_faa_refined importa il file Esplora aircraft. Nel progetto e_faa_refined puoi utilizzare un perfezionamento per semplificare drasticamente l'esplorazione di aircraft.

Poiché la funzionalità Esplora di aircraft è un file importato, non puoi modificarla direttamente. In alternativa, puoi aggiungervi un perfezionamento. Di seguito è riportato un esempio di un file separato denominato refinements.lkml che contiene il codice LookML:

include: "//e_faa_original/Explores/aircraft.explore.lkml"

explore: +aircraft {
  label: "Aircraft Simplified"
  fields: [aircraft.aircraft_serial, aircraft.name, aircraft.count]
}

Il file refinements.lkml contiene quanto segue:

  • Il parametro include per importare il file aircraft.explore.lkml originale dal progetto importato (consulta la pagina della documentazione relativa all'importazione di file da altri progetti per informazioni dettagliate su come fare riferimento ai file di progetto importati).
  • Perfezionamenti per aircraft:
    • Il simbolo + davanti al nome della risorsa Esplora indica un perfezionamento rispetto a un'esplorazione esistente.
    • Il parametro label cambia l'etichetta di Explore in "Aircraft Semplifica".
    • Il parametro fields specifica che in Esplora sono visualizzati solo tre campi.

Il risultato finale è come se fossero le aircraft esplorazioni e aircraft originali:

explore: aircraft {
  label: "Aircraft Simplified"
  }

view: aircraft {
  sql_table_name: flightstats.aircraft ;;

  dimension: aircraft_serial {
    type: string
    sql: ${TABLE}.aircraft_serial ;;
  }

  dimension: name {
    type: string
    sql: ${TABLE}.name ;;
  }

  measure: count {
    type: count
  }
}

Altri casi d'uso per i perfezionamenti

Come accennato in precedenza, i perfezionamenti sono ideali per adattare gli oggetti LookML di sola lettura, come i blocchi Looker o i file importati.

Una volta che hai avuto la possibilità di aggiungere perfezionamenti e di includerli nei tuoi modelli, puoi eseguire operazioni molto interessanti con i tuoi progetti, come illustrato negli esempi riportati di seguito.

Utilizzo dei perfezionamenti per aggiungere analisi

Puoi utilizzare i perfezionamenti per aggiungere analisi al modello senza toccare i file LookML originali. Ad esempio, se esiste un progetto in cui le viste e le esplorazioni sono generate dalle tabelle del tuo database e archiviate in un file LookML denominato faa_basic.lkml, puoi creare un file faa_analysis.lkml in cui puoi utilizzare i perfezionamenti per aggiungere analisi. Ecco un esempio di nuova tabella derivata denominata distance_stats che contiene un'analisi della distanza. Questo esempio mostra un perfezionamento dell'esplorazione flights esistente dal file faa_basic.lkml che unisce la tabella derivata distance_stats all'esplorazione flights. Inoltre, in fondo all'esempio, la vista flights esistente viene perfezionata per aggiungere nuovi campi dall'analisi:

include: "faa_basic.lkml"

explore: +flights {
  join: distance_stats {
    relationship: one_to_one
    type: cross
  }
}

view: distance_stats {
  derived_table: {
    explore_source: flights {
      bind_all_filters: yes
      column: distance_avg {field:flights.distance_avg}
      column: distance_stddev {field:flights.distance_stddev}
    }
  }
  dimension: avg {
    type:number
    sql: CAST(${TABLE}.distance_avg as INT64) ;;
  }
  dimension: stddev {
    type:number
    sql: CAST(${TABLE}.distance_stddev as INT64) ;;
  }
}
view: +flights {
  measure: distance_avg {
    type: average
    sql: ${distance} ;;
  }
  measure: distance_stddev {
    type: number
    sql: STDDEV(${distance}) ;;
  }
  dimension: distance_tiered2 {
    type: tier
    sql: ${distance} ;;
    tiers: [500,1300]
  }
}

Utilizzo dei perfezionamenti per aggiungere livelli al modello

Un altro caso d'uso interessante per i perfezionamenti consiste nell'aggiungere livelli al tuo progetto. Puoi creare più file di perfezionamento e includerli in modo strategico per aggiungere livelli.

Ad esempio, nel progetto FAA è presente un file faa_raw.lkml che contiene tutte le visualizzazioni e le esplorazioni generate da tabelle nel tuo database. Questo file mostra una tabella per ogni tabella del database, ciascuna con una dimensione per ogni colonna del database.

Oltre al file non elaborato, puoi creare un file faa_basic.lkml per aggiungere un nuovo livello con perfezionamenti di base, ad esempio l'aggiunta di join alle esplorazioni o l'aggiunta di misure alle visualizzazioni, come riportato di seguito:

include: "faa_raw.lkml"

explore: +flights {
  join: carriers {
    sql_on: ${flights.carrier} = ${carriers.name} ;;
  }
}

view: +flights {
  measure: total_seats {
    type: sum
    sql: ${aircraft_models.seats} ;;
  }
}

Puoi quindi aggiungere un file faa_analysis.layer.lkml per aggiungere un nuovo livello con analisi (per un esempio di file di analisi, consulta la sottosezione Utilizzo dei perfezionamenti per aggiungere analisi).

Da lì, devi solo includere tutti i file di perfezionamento nel file del modello. Puoi anche utilizzare il file del modello per aggiungere perfezionamenti per indirizzare le viste alle tabelle del database a cui vuoi fare riferimento:

connection: "publicdata_standard_sql"

include: "faa_raw.lkml"
include: "faa_basic.lkml"
include: "faa_analysis.lkml"

view: +flights {
  sql_table_name: lookerdata.faa.flights;;
}
view: +airports {
  sql_table_name: lookerdata.faa.airports;;
}
view: +aircraft {
  sql_table_name: lookerdata.faa.aircraft;;
}
view: +aircraft_models{
  sql_table_name: lookerdata.faa.aircraft_models;;
}
view: +carriers {
  sql_table_name: lookerdata.faa.carriers;;
}

Puoi duplicare questo file di modello e puntare su diverse tabelle di database oppure puoi includere diversi file di perfezionamento creati per definire altri livelli da applicare al modello.

Utilizzo dei perfezionamenti per le PDT

Come descritto nella sezione Perfezionamenti confrontati con estensioni in questa pagina, un'estensione crea una nuova copia dell'oggetto che è in fase di estensione. Nel caso delle tabelle derivate persistenti (PDT), non devi utilizzare estensioni, poiché ogni estensione di una PDT creerà una nuova copia della tabella nel tuo database.

Tuttavia, puoi aggiungere perfezionamenti alla visualizzazione PDT, poiché i perfezionamenti non creano una nuova copia dell'oggetto che viene perfezionato.

Utilizzo dei metadati per visualizzare i perfezionamenti di un oggetto

Puoi fare clic su un parametro explore o view nell'IDE di Looker e utilizzare il riquadro dei metadati per visualizzare eventuali perfezionamenti nell'oggetto. Per informazioni, consulta la pagina della documentazione Metadati per oggetti LookML.

Aspetti da considerare

Progetti con localizzazione

Durante il perfezionamento di un oggetto, tieni presente che le regole di localizzazione vengono applicate anche ai perfezionamenti. Se stai perfezionando un oggetto e poi definendo nuove etichette o descrizioni, devi fornire le definizioni di localizzazione nei file delle stringhe locali del progetto. Per ulteriori informazioni, consulta la pagina Localizzazione del modello LookML.