Personalizzazione dei blocchi di Looker Marketplace

I Looker Blocks™ sono modelli di dati predefiniti per pattern di analisi e origini dati comuni. Questa pagina descrive in che modo gli sviluppatori possono personalizzare i Looker Block installati da Looker Marketplace. Looker Marketplace è una piattaforma centralizzata per trovare, eseguire il deployment e gestire molti tipi di contenuti di Looker, come applicazioni, visualizzazioni e plug-in.

Per ulteriori informazioni su tutti i Looker Blocks disponibili, inclusi i blocchi non attualmente disponibili in Looker Marketplace, nonché su metodi alternativi di personalizzazione dei blocchi, consulta la pagina della documentazione Looker Blocks.

Requisiti per l'installazione e la gestione dei blocchi Looker da Looker Marketplace

Prima di poter installare e utilizzare alcuni blocchi di Looker Marketplace, l'amministratore di Looker deve attivare le seguenti funzionalità:

Gli utenti devono disporre delle autorizzazioni develop, manage_models e deploy per installare e gestire i pacchetti dal Marketplace.

Consulta la pagina della documentazione di Looker Marketplace per informazioni sull'installazione e sulla gestione dei Looker Block da Looker Marketplace.

Accesso al codice LookML di un blocco del marketplace

I blocchi basati su progetti che utilizzano i perfezionamenti vengono installati dal marketplace come un singolo progetto CONFIG modificabile che importa da remoto il progetto CORE, contenente tutto il codice LookML e la parametrizzazione costante.

Una volta installato dal marketplace, puoi accedere al progetto dal menu Sviluppa facendo clic sul nome del progetto nell'elenco dei progetti. Al nome di un blocco di perfezionamenti del marketplace viene solitamente anteposto marketplace_ seguito dall'ID scheda.

Sebbene non sia possibile modificare direttamente il progetto CORE di sola lettura di un blocco, ti consigliamo di utilizzare il codice LookML definito nei file CORE di sola lettura del blocco come riferimento quando personalizzi i file CONFIG del blocco. Puoi visualizzare i file CORE del blocco passando ai file di progetto del blocco nell'IDE ed espandendo la directory imported_projects nel browser dei file dell'IDE.

Blocca la struttura del file

Quando installi un blocco creato per i perfezionamenti, questi file vengono creati automaticamente nella parte CONFIG del progetto del blocco:

Nome del file Accesso Funzione
<model_name>.model.lkml Di sola lettura per tutti gli utenti File del modello virtuale associato all'installazione del blocco; gestisce l'importazione di eventuali modelli dal progetto CORE del blocco. Quando un blocco viene disinstallato o aggiornato, i file del modello associati vengono eliminati, evitando conflitti di modelli tra più installazioni di blocchi.
manifest.lkml Modificabile per gli utenti con autorizzazioni develop Descrive il progetto e le sue dipendenze esterne. Contiene l'ID scheda del marketplace per l'installazione del blocco e facilita l'importazione da remoto dei file del progetto CORE del blocco tramite la parola chiave marketplace.
marketplace_lock.lkml Di sola lettura per tutti gli utenti Contiene un riferimento alla parola chiave marketplace_ref del file manifest che gestisce l'importazione remota del progetto CORE. Fornisce informazioni specifiche su elenco, versione e modello associati all'installazione. Contiene informazioni sulle costanti configurate durante l'installazione (e che possono essere aggiornate utilizzando l'opzione Gestisci nell'interfaccia utente di Marketplace).
refinements.lkml Modificabile per gli utenti con autorizzazioni develop Consente agli sviluppatori di perfezionare le visualizzazioni e le esplorazioni definite nei file di progetto CORE importati.

Personalizzare un blocco del marketplace

Attiva la modalità di sviluppo per apportare personalizzazioni ai file modificabili del blocco.

Se disponi delle autorizzazioni develop, puoi personalizzare il codice LookML nel file refinements.lkml del progetto CONFIG del blocco. Puoi perfezionare le visualizzazioni e le esplorazioni già definite nel progetto CORE del blocco o persino aggiungere nuove visualizzazioni ed esplorazioni non ancora definite nel progetto CORE. Nel file refinements.lkml del blocco è possibile fare tutto ciò che è possibile con i perfezionamenti LookML in altri progetti LookML. La combinazione del perfezionamento e del LookML originale si comporta come se fosse il LookML originale dell'oggetto.

Puoi anche apportare modifiche al file manifest.lkml del progetto CONFIG per specificare le dipendenze da acquisire per quel blocco.

Non sei limitato a modificare questi file per ottenere le personalizzazioni che desideri. Puoi anche creare nuovi file nel progetto CONFIG, ma assicurati di include i nuovi file nel file refinements.lkml.

Personalizzazione del file di perfezionamento

Se disponi delle autorizzazioni develop, puoi aggiungere LookML personalizzato al progetto CONFIG per integrare dati aggiuntivi o modificare il modello di analisi di base del blocco. Puoi creare nuove visualizzazioni e unirli a esplorazioni esistenti, definire nuovi campi o ridefinire quelli esistenti oppure applicare etichette in base alle esigenze per creare un modello per l'analisi che vuoi fornire. Se hai creato nuovi file nel progetto CONFIG, devi include nel file di perfezionamento.

Ad esempio, supponiamo che tu abbia installato un blocco e che il relativo file refinements.lkml contenga:

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

dove listing_id è il valore del parametro listing del file manifest.lkml.

Puoi utilizzare i perfezionamenti per aggiungere una nuova dimensione a una visualizzazione denominata flights:

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

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

In alternativa, puoi applicare un'etichetta a un'esplorazione denominata aircraft in modo che venga visualizzata nell'interfaccia utente come Aeromobili semplificati:

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

explore: +aircraft {
  label: "Aircraft Simplified"
}

Il file refinements.lkml viene incluso automaticamente nel file del modello "virtuale" del blocco, che essenzialmente importa i modelli dal progetto CORE.

Per ulteriori informazioni su questo argomento avanzato, consulta la documentazione relativa ai perfezionamenti di LookML.

Personalizzazione del file manifest modificabile

Nei blocchi che utilizzano i perfezionamenti, sia i progetti CORE che CONFIG hanno file manifest; tuttavia, solo il file manifest del progetto CONFIG è modificabile.

Puoi modificare il file CONFIG manifest.lkml per aggiungere i parametri del progetto a quelli già presenti nel file manifest del progetto CORE. Ad esempio, puoi aggiungere un local_dependency per unire il tuo blocco a un altro blocco nella stessa istanza Looker.

Prima di poter utilizzare o creare un blocco che contiene un parametro local_dependency, è necessario che un amministratore di Looker abbia abilitato la funzionalità Labs Importazione progetto locale.

Aggiornamento dei valori per le costanti

Le costanti del blocco sono definite nel file manifest del progetto CORE importato. L'override del valore di una costante, se consentito, deve essere eseguito nell'interfaccia utente del marketplace durante la configurazione o aggiornando il blocco. Per aggiornare un blocco, gli utenti devono disporre delle autorizzazioni develop, manage_models e deploy.

Per sostituire il valore di una costante aggiornando un blocco:

  1. Nel marketplace di Looker, vai al blocco che vuoi aggiornare.
  2. Fai clic sul pulsante Gestisci.
  3. Fai clic sull'icona a forma di ingranaggio accanto al nome del blocco da aggiornare. Si apre la finestra di configurazione del blocco.
  4. Modifica i valori costanti in base alle esigenze.
  5. Fai clic su Aggiorna per chiudere la finestra di configurazione del blocco e aggiornare il blocco con le modifiche.

Le modifiche vengono applicate al file marketplace_lock.lkml di sola lettura nel progetto installato.

Preservare le personalizzazioni di un blocco del marketplace che utilizza estensioni

Alcuni dei blocchi disponibili su Looker Marketplace sono stati composti da progetti che utilizzano le estensioni di LookML. Looker sta convertendo tutti i blocchi del marketplace per le istanze su Looker 21.8 o versioni successive in una struttura di progetto che utilizza i perfezionamenti di LookML e rimuoverà il supporto per i blocchi basati su extends.

Looker consiglia di installare la versione basata sui perfezionamenti di tutti i blocchi del marketplace presenti nella tua istanza man mano che diventano disponibili, sostituendo i blocchi creati con gli estensioni. Sebbene questa procedura di sostituzione sia semplice, puoi installare il nuovo blocco (affinamenti) dall'elenco dei blocchi di Looker Marketplace e disinstallare il blocco originale (estensioni) nella pagina Gestisci di Looker Marketplace, ma non verranno conservate le personalizzazioni che potrebbero essere state apportate al blocco creato con gli elementi di estensione. Inoltre, Looker non trasferirà contenuti o funzioni di Looker basati su questi contenuti (dashboard, esplorazioni, importazioni pianificate dei contenuti, avvisi) dal blocco originale al nuovo blocco.

Questa sezione descrive come conservare eventuali personalizzazioni di un blocco creato con progetti che utilizzano estensioni che altrimenti sarebbero difficili o dispendiose in termini di tempo da replicare da zero.

Per preservare le personalizzazioni del blocco, un utente con la possibilità di installare e gestire i pacchetti dal Marketplace deve:

  1. Aggiorna il progetto CONFIG del blocco originale per prepararti alla migrazione
  2. Installa la nuova versione del blocco da Looker Marketplace
  3. Trasferire le personalizzazioni al nuovo blocco del marketplace
  4. Rigenerare i contenuti di Looker in base al blocco originale
  5. Disinstalla la versione del blocco creata con extends

Aggiornamento di un blocco personalizzato per la preparazione della migrazione

Questa sezione descrive come aggiornare i file di progetto principali in un blocco creato con estensioni in modo da poter copiare le personalizzazioni del blocco in una nuova versione del blocco basata sui perfezionamenti. Un blocco basato su un progetto che utilizza estensioni viene installato dal Marketplace come progetto CORE di sola lettura e come progetto CONFIG modificabile.

  1. Vai al progetto CONFIG del blocco dalla sezione Sviluppa in uno dei seguenti modi:

    • Fai clic sull'opzione Progetti e poi sul nome del progetto.
    • Fai clic sul nome del progetto CONFIG del blocco nell'elenco dei progetti.

    I nomi dei progetti CONFIG terminano in genere con _config, mentre il nome del progetto CORE in genere non ha un suffisso.

  2. Apri il file del modello del progetto, che potrebbe avere il seguente aspetto:


    explore: ga_sessions_config {
      extends: [ga_sessions_core]
      extension: required
      join: user_sales_data {
        sql_on: ${user_sales_data.full_visitor_id} = ${ga_sessions.full_visitor_id} ;;
      }
      join: sales__by__category {
        sql: LEFT JOIN UNNEST(${user_sales_data.sales_by_category}) as sales__by__category;;
      }
    }

    explore: future_input_config {
      extends: [future_input_core]
      extension: required
      join: future_purchase_prediction {
        type: left_outer
        sql_on: ${future_input.full_visitor_id} = ${future_purchase_prediction.full_visitor_id} ;;
        relationship: one_to_one
      }
    }

  1. In modalità di sviluppo:

    1. Elimina le righe extends e extension.
    2. Elimina _config dai nomi explore.
    3. Anteponi + ai nomi explore.

    L'esempio di file del modello precedente sarà simile al seguente:


    explore: +ga_sessions {
      join: user_sales_data {
        sql_on: ${user_sales_data.full_visitor_id} = ${ga_sessions.full_visitor_id} ;;
      }
      join: sales__by__category {
        sql: LEFT JOIN UNNEST(${user_sales_data.sales_by_category}) as sales__by__category;;
      }
    }

    explore: +future_input {
      join: future_purchase_prediction {
        type: left_outer
        sql_on: ${future_input.full_visitor_id} = ${future_purchase_prediction.full_visitor_id} ;;
        relationship: one_to_one
      }
    }

  1. Copia e conserva i contenuti di questo file per un passaggio successivo.

Installazione del nuovo blocco del marketplace

Un blocco basato su un progetto che utilizza i perfezionamenti viene installato dal marketplace come singolo progetto LookML modificabile che importa da remoto il progetto contenente tutto il codice LookML e la parametrizzazione costante.

  1. Seleziona l'icona del negozio nella barra dei menu di Looker per accedere al marketplace di Looker.
  2. Fai clic sulla scheda del nuovo blocco del marketplace basato sui perfezionamenti. Questo blocco ha lo stesso nome del blocco esistente creato con extends.
  3. Fai clic su Installa per installare il nuovo blocco. Una volta installato questo blocco, nella pagina Gestisci di Looker Marketplace vedrai due schede identiche.

Trasferimento delle personalizzazioni al nuovo blocco Marketplace

Questa sezione descrive come trasferire gli aggiornamenti apportati al blocco originale (estensioni) nel nuovo blocco (affinamenti).

  1. Nella sezione Sviluppa, apri il progetto del nuovo blocco in uno dei seguenti modi:

    • Fai clic sull'opzione Progetti e poi sul nome del progetto.
    • Fai clic sul nome del progetto del blocco nell'elenco dei progetti.

    Al nome di un blocco di perfezionamenti del marketplace viene solitamente anteposto marketplace_ seguito dall'ID scheda.

  2. Nel file refinements.lkml, incolla i contenuti aggiornati dal file del modello del blocco originale (espande). Assicurati di conservare eventuali istruzioni include già presenti nel file di perfezionamento.

Ricreare i contenuti di Looker in base al blocco originale

Il passaggio finale per adottare la versione basata sui perfezionamenti di un blocco del marketplace è disinstallare la versione originale basata sugli estensioni del blocco. Alcuni blocchi basati su estensioni contengono esplorazioni e dashboard LookML predefiniti. Se gli utenti hanno creato avvisi o pubblicazioni pianificate basati su dashboard LookML definite nel blocco originale (estensioni), questi avvisi o pianificazioni verranno disattivati o non andranno a buon fine, rispettivamente, una volta disinstallato il blocco dal marketplace di Looker.

Devi ricreare questi avvisi o pubblicazioni pianificate nelle dashboard LookML del nuovo blocco (affinamenti). Gli amministratori di Looker e gli utenti con le autorizzazioni appropriate per le pianificazioni e gli avvisi possono utilizzare le pagine Avvisi e pianificazioni nella sezione Amministrazione per cercare i nomi delle dashboard del blocco (estensioni) e creare nuovi avvisi o pubblicazioni pianificate in base alle esigenze nelle dashboard corrispondenti del blocco (ottimizzazioni).

Devi anche modificare tutti gli altri contenuti di Looker che fanno riferimento alle esplorazioni o alle dashboard di LookML del blocco originale (estensioni) in modo che puntino al nuovo blocco (ottimizzazioni), se necessario.

Disinstallazione del blocco originale

Per disinstallare la versione del blocco creata con extends:

  1. Seleziona l'icona del negozio nella barra dei menu di Looker per accedere al marketplace di Looker.

  2. Nel marketplace di Looker, seleziona Gestisci nel menu di navigazione a sinistra per aprire la pagina Gestisci.

  3. Nella pagina Gestisci, fai clic sull'icona del cestino per disinstallare il blocco originale (estensioni). Puoi distinguere l'elenco dei blocchi di estensioni dall'elenco dei blocchi di perfezionamento osservando i numeri di versione. Il blocco extends sarà una versione principale indietro rispetto al blocco dei perfezionamenti. Ad esempio, il blocco extends potrebbe essere della versione 1.0.4 e il blocco refinements della versione 2.0.0.

Una volta disinstallato il blocco, la relativa voce (estensioni) originale scompare dal riquadro di navigazione a sinistra nell'istanza di Looker, le relative esplorazioni scompaiono dalla sezione Esplora, le relative dashboard di LookML scompaiono dalla cartella Dashboard di LookML e tutti gli avvisi o le pubblicazioni pianificate basati sulle dashboard di LookML del blocco verranno disattivati o non andranno a buon fine.

Risolvere i problemi relativi a un blocco

Se un blocco del marketplace mostra errori, è possibile che lo schema non corrisponda alla struttura del blocco.

Ti consigliamo inoltre di verificare che le costanti fornite durante l'installazione del blocco, che rappresentano la connessione, il database o lo schema del blocco, siano state definite correttamente. Per farlo, puoi:

  1. Seleziona l'icona del negozio nella barra dei menu di Looker per accedere al marketplace di Looker.

  2. Nel marketplace di Looker, seleziona Gestisci nel menu di navigazione a sinistra per aprire la pagina Gestisci.

  3. Nella pagina Gestisci, fai clic sull'icona a forma di ingranaggio del blocco per visualizzarne le impostazioni di configurazione.

  4. Nella finestra Aggiorna configurazioni, verifica che il blocco sia configurato correttamente. Fai clic su Aggiorna dopo aver apportato le modifiche per salvarle e chiudere la finestra di configurazione del blocco.