Looker Marketplace-Blöcke anpassen

Looker BlocksTM sind vordefinierte Datenmodelle für gängige Analysemuster und Datenquellen. Auf dieser Seite wird beschrieben, wie Entwickler Looker Blocks, die über den Looker Marketplace installiert sind, anpassen können. Der Looker Marketplace ist ein zentraler Ort zum Suchen, Bereitstellen und Verwalten vieler Arten von Looker-Inhalten wie Anwendungen, Visualisierungen und Plug-ins.

Weitere Informationen zu allen verfügbaren Looker Blocks, einschließlich Blöcken, die derzeit nicht im Looker Marketplace verfügbar sind, sowie zu alternativen Blockanpassungsmethoden finden Sie auf der Dokumentationsseite zu Looker Blocks.

Anforderungen für die Installation und Verwaltung von Looker Blocks über Looker Marketplace

Bevor Sie einige Blockierungen aus dem Looker Marketplace installieren und verwenden können, muss Ihr Looker-Administrator diese Funktionen aktivieren:

  • Wenn Sie Ihre Blockierung über den Looker Marketplace installieren, muss der Looker-Administrator die Funktion Marketplace aktivieren.
  • Wenn der Block einen local_dependency-Parameter enthält, muss Ihr Looker-Administrator auch die Funktion Lokales Projekt importieren Labs aktivieren. Diese Blöcke enthalten den Parameter local_dependency:

    • Analysen für digitales Marketing
    • Vertriebsanalytik
    • Web-Analytik

Nutzer benötigen die Berechtigungen develop, manage_models und deploy, um Pakete über den Marktplatz zu installieren und zu verwalten.

Informationen zum Installieren und Verwalten von Looker Blocks über Looker Marketplace finden Sie in der Dokumentation zum Looker Marketplace.

Auf LookML für eine Marketplace-Blockierung zugreifen

Blöcke, die auf Projekten mit Suchfilter basieren, werden als einzelnes, bearbeitbares CONFIG-Projekt aus dem Marketplace installiert. Es importiert das CORE-Projekt, das den gesamten LookML-Code und die konstante Parametrisierung enthält, per Fernzugriff.

Wenn eine Blockierung über den Marktplatz installiert wurde, können Sie über das Menü Entwickeln auf das Projekt zugreifen. Klicken Sie dazu in der Projektliste auf den Namen des Projekts. Dem Namen eines Marktplatz-Suchfilters wird normalerweise marketplace_ vorangestellt, gefolgt von der Angebots-ID.

Obwohl Sie das schreibgeschützte CORE-Projekt eines Blocks nicht direkt ändern können, möchten Sie möglicherweise das in den schreibgeschützten CORE-Dateien des Blocks definierte LookML verwenden, wenn Sie die CONFIG-Dateien des Blocks anpassen. Sie können die CORE-Dateien des Blocks aufrufen, indem Sie zu den Projektdateien des Blocks in der IDE gehen und das Verzeichnis imported_projects im IDE-Dateibrowser maximieren:

Dateistruktur blockieren

Wenn Sie einen für die Optimierung vorgesehenen Block installieren, werden die folgenden Dateien automatisch als Teil der CONFIG-Komponente des Blockprojekts erstellt:

Dateiname Zugriff Funktion
<model_name>.model.lkml Für alle Nutzer schreibgeschützt Virtuelle Modelldatei, die mit der Blockinstallation verknüpft ist. Der Import aller Modelle aus dem CORE-Projekt des Blocks wird durchgeführt. Wenn ein Block deinstalliert oder aktualisiert wird, werden die zugehörige Modelldatei oder -dateien gelöscht, wodurch Modellkonflikte zwischen mehreren Blockinstallationen verhindert werden.
manifest.lkml Kann für Nutzer mit develop-Berechtigungen bearbeitet werden Beschreibt das Projekt und seine externen Abhängigkeiten. Enthält die Marketplace-Eintrag-ID für die Blockinstallation und ermöglicht den Remote-Import der CORE-Projektdateien des Blocks über das Keyword marketplace.
marketplace_lock.lkml Für alle Nutzer schreibgeschützt Enthält einen Verweis auf das Keyword marketplace_ref aus der Manifestdatei, die den Remote-Import des CORE-Projekts übernimmt. Liefert die spezifischen Listen-, Versions- und Modellinformationen, die mit der Installation verknüpft sind. Enthält Informationen zu Konstanten, die während der Installation konfiguriert werden und mit der Option Verwalten in der Marketplace-UI aktualisiert werden können.
refinements.lkml Kann für Nutzer mit develop-Berechtigungen bearbeitet werden Hiermit können Entwickler Ansichten und explorative Datenanalysen verfeinern, die in den importierten CORE-Projektdateien definiert sind.

Marktplatzblock anpassen

Aktivieren Sie den Entwicklungsmodus, um die bearbeitbaren Dateien der Blockierung anzupassen.

Wenn Sie Berechtigungen des Typs develop haben, können Sie die LookML in der Datei refinements.lkml des KONFIGURATIONSprojekts des Blocks anpassen. Sie können die im CORE-Projekt definierten Datenansichten und explorativen Datenanalysen verfeinern oder neue Datenansichten und explorative Datenanalysen hinzufügen, die noch nicht im CORE-Projekt definiert sind. Alles, was mit LookML-Optimierungen in anderen LookML-Projekten möglich ist, ist in der refinements.lkml-Datei des Blocks möglich. Die Kombination aus Suchfilter und ursprünglichem LookML verhält sich so, als wäre es das ursprüngliche LookML für das Objekt.

Sie können auch Änderungen an der manifest.lkml-Datei des Projekts vornehmen, um alle Abhängigkeiten anzugeben, die für diesen Block erfasst werden müssen.

Sie sind nicht darauf beschränkt, diese Dateien zu bearbeiten, um die gewünschten Anpassungen vorzunehmen. Sie können im CONFIG-Projekt auch neue Dateien erstellen. Achten Sie aber darauf, alle neuen Dateien in der Datei refinements.lkml mit include zu bearbeiten.

Datei für Suchfilter anpassen

Wenn Sie Berechtigungen des Typs develop haben, können Sie dem Projekt „CONFIG“ benutzerdefiniertes LookML hinzufügen, um zusätzliche Daten hinzuzufügen, oder das grundlegende Analysemodell des Blocks ändern. Sie können neue Datenansichten erstellen und diese mit vorhandenen Erkundungen verknüpfen, neue Felder definieren oder vorhandene Felder neu definieren oder Labels hinzufügen, um ein Modell für die Analyse zu erstellen, die Sie bereitstellen möchten. Wenn Sie im CONFIG-Projekt neue Dateien erstellt haben, müssen Sie diese in der Datei für Suchfilter include angeben.

Angenommen, Sie haben einen Block installiert und die Datei refinements.lkml enthält Folgendes:

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

Dabei ist listing_id der Wert des Parameters listing aus der Datei manifest.lkml.

Mit Suchfiltern können Sie einer Datenansicht mit dem Namen flights eine neue Dimension hinzufügen:

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

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

Alternativ können Sie ein Label mit dem Namen aircraft auf ein exploratives Analysetool anwenden, damit es in der Benutzeroberfläche als Flugzeug vereinfacht angezeigt wird:

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

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

Die Datei refinements.lkml wird automatisch in die Modelldatei „block“ eingefügt, die im Grunde die Modelle aus dem CORE-Projekt importiert.

Weitere Informationen zu diesem erweiterten Thema finden Sie in der Dokumentation zu LookML-Optimierungen.

Bearbeitbare Manifestdatei anpassen

In Blöcken mit Suchfiltern enthalten sowohl das CORE- als auch das CONFIG-Projekt Manifestdateien. Allerdings kann nur die Manifestdatei des CONFIG-Projekts bearbeitet werden.

Sie können die KONFIGURATION manifest.lkml bearbeiten, um Projektparameter zu den Parametern hinzuzufügen, die bereits in der Manifestdatei des CORE-Projekts enthalten sind. Sie können beispielsweise einen local_dependency hinzufügen, um Ihren Block mit einem anderen Block auf derselben Looker-Instanz zu verbinden.

Bevor Sie einen Block verwenden oder auf einem Block erstellen können, der einen local_dependency-Parameter enthält, muss ein Looker-Administrator zuerst die Funktion Lokales Projekt importieren Labs aktivieren.

Werte für Konstanten aktualisieren

Die Konstanten des Blocks sind in der Manifestdatei des importierten CORE-Projekts definiert. Das Überschreiben eines Werts für eine Konstante muss, sofern zulässig, in der Marketplace-UI während der Konfiguration oder durch Aktualisieren der Blockierung erfolgen. Zum Aktualisieren einer Blockierung benötigen Nutzer die Berechtigungen develop, manage_models und deploy.

So überschreiben Sie einen Wert einer Konstante, indem Sie einen Block aktualisieren:

  1. Rufen Sie im Looker Marketplace den Block auf, den Sie aktualisieren möchten.
  2. Klicken Sie auf die Schaltfläche Verwalten.
  3. Klicken Sie neben dem Namen der Blockierung, die Sie aktualisieren möchten, auf das Zahnradsymbol. Dadurch wird das Fenster der Blockkonfiguration geöffnet.
  4. Nehmen Sie bei Bedarf Änderungen an den konstanten Werten vor.
  5. Klicken Sie auf Update (Aktualisieren), um das Fenster der Blockkonfiguration zu schließen und die Änderungen zu übernehmen.

Die Änderungen werden in der schreibgeschützten Datei marketplace_lock.lkml in Ihrem installierten Projekt widergespiegelt.

Anpassungen aus einer Marketplace-Blockierung beibehalten, die Erweiterungen verwendet

Einige der Blöcke, die über den Looker Marketplace verfügbar sind, setzen sich aus Projekten zusammen, die LookML-Erweiterungen verwenden. Looker wandelt alle Marketplace-Blöcke für Instanzen in Looker 21.8 oder höher in eine Projektstruktur um, die LookML-Suchfilter verwendet, und entfernt die Unterstützung für Blöcke, die auf Erweiterungen basieren.

Looker empfiehlt, die auf Optimierungen basierende Version von Marketplace-Blöcken zu installieren, die auf Ihrer Instanz vorhanden sind, sobald diese Blöcke verfügbar sind. Ersetzen Sie in diesem Fall die Blöcke, die durch Erweiterungen erstellt wurden. Der Austausch ist zwar einfach, aber Sie können den neuen Block (Suchfilter) über den Looker Marketplace-Blockeintrag installieren und den ursprünglichen Block (Erweiterungen) auf der Seite Verwalten im Looker Marketplace deinstallieren. Bei der Erweiterung, die an der mit Erweiterungen erstellten Blockierung vorgenommen wurde, werden diese jedoch nicht beibehalten. Looker überträgt auch keine Looker-Inhalte oder -Funktionen, die auf diesen Inhalten basieren – Dashboards, explorative Datenanalysen, geplante Inhaltsübermittlungen, Benachrichtigungen – vom ursprünglichen Block auf den neuen Block.

In diesem Abschnitt wird beschrieben, wie Sie Anpassungen an einem Block beibehalten, der mit Projekten mit Erweiterungen erstellt wurde, die ansonsten von Grund auf neu oder schwer zu replizieren wären.

Damit die Anpassungen Ihrer Blockierung beibehalten werden, muss ein Nutzer mit der Möglichkeit, Pakete vom Marktplatz aus zu installieren und zu verwalten:

  1. Das ursprüngliche CONFIG-Projekt für die Migration aktualisieren, um die Migration vorzubereiten
  2. Neue Version des Blocks aus Looker Marketplace installieren
  3. Anpassungen auf die neue Marketplace-Blockierung übertragen
  4. Looker-Inhalte basierend auf dem ursprünglichen Block neu erstellen
  5. Version des mit Erweiterungen erstellten Blocks deinstallieren

Benutzerdefinierte Blockierung zur Vorbereitung auf die Migration aktualisieren

In diesem Abschnitt wird beschrieben, wie Sie wichtige Projektdateien in einem Block aktualisieren, der mit Erweiterungen erstellt wurde. So können Sie die Anpassungen des Blocks auf eine neue Suchfilter-Version des Blocks kopieren. Ein auf einem Projekt mit einem Erweiterung basierender Block wird vom Marketplace als schreibgeschütztes CORE-Projekt und als bearbeitbares CONFIG-Projekt installiert.

  1. Gehen Sie im Abschnitt Entwickeln auf eine der folgenden Arten zum CONFIG-Projekt für den Block:

    • Klicken Sie auf die Option Projekte und dann auf den Namen des Projekts.
    • Klicken Sie in der Projektliste auf den Namen des CONFIG-Projekts, das blockiert werden soll.

    KONFIGURIERTE Projektnamen enden normalerweise auf _config, während der Name des CORE-Projekts in der Regel kein Suffix hat.

  2. Öffnen Sie die Modelldatei des Projekts, die in etwa so aussehen kann:


    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. Im Entwicklungsmodus:

    1. Löschen Sie die gesamten Zeilen extends und extension.
    2. Löschen Sie _config aus den explore-Namen.
    3. Stellen Sie + vor die Namen von explore.

    Die vorherige Modelldatei sieht so aus:


    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. Kopieren Sie den Inhalt dieser Datei und bewahren Sie sie für einen späteren Schritt auf.

Neue Marketplace-Blockierung installieren

In den Release-Highlights von Looker 21 finden Sie weitere Informationen darüber, welche Blöcke bereits von Erweiterungen bis zu Optimierungen verwendet wurden. Anhand der Versionsnummern können Sie die Liste der erweiterten Blockierungen von der Liste der Optimierungen unterscheiden. Der Erweiterungsblock ist eine Hauptversion hinter dem Suchfilterblock. Beispielsweise kann der Erweiterungsblock Version 1.0.4 und der Suchfilter-Block Version 2.0.0 sein.

Ein Block, der auf einem Projekt mit Suchfiltern basiert, wird aus dem Marketplace als einzelnes, bearbeitbares LookML-Projekt installiert, das aus der Ferne das Projekt mit allen LookML-Funktionen und konstanter Parametrisierung importiert.

  1. Klicken Sie in der Looker-Menüleiste auf das Shop-Symbol, um zum Looker Marketplace zu wechseln.
  2. Klicken Sie auf den Eintrag für die neue, auf dem Marktplatz basierende Blockierung. Dieser Block hat denselben Namen wie der vorhandene Block, mit dem eine Erweiterung erstellt wurde.
  3. Klicken Sie auf Installieren, um den neuen Block zu installieren. Nach der Installation dieser Blockierung sehen Sie auf der Seite Manage (Verwalten) des Looker Marketplace zwei identische Einträge.

Anpassungen auf die neue Marketplace-Blockierung übertragen

In diesem Abschnitt wird beschrieben, wie Sie Aktualisierungen, die Sie an den ursprünglichen Block (Erweiterung) vorgenommen haben, auf den neuen (Optimierungs)block übertragen.

  1. Öffnen Sie im Abschnitt Entwickeln das neue Projekt auf eine der folgenden Arten:

    • Klicken Sie auf die Option Projekte und dann auf den Namen des Projekts.
    • Klicken Sie in der Projektliste auf den Namen des zu blockierenden Projekts.

    Dem Namen eines Marktplatz-Suchfilters wird normalerweise marketplace_ vorangestellt, gefolgt von der Angebots-ID.

  2. Fügen Sie in der Datei refinements.lkml den aktualisierten Inhalt aus der ursprünglichen (Erweiterungs-)Blockdatei ein. Behalten Sie alle include-Anweisungen, die bereits in der Suchfilterdatei enthalten sind, bei.

Looker-Inhalte auf der Grundlage der ursprünglichen Blockierung neu erstellen

Im letzten Schritt zur Einführung der auf Optimierungen basierenden Version einer Marketplace-Blockierung deinstallieren Sie die ursprüngliche Erweiterungsversion der Blockierung. Einige erweiterungsbasierte Blöcke enthalten vorgefertigte LookML-Dashboards und explorative Datenanalysen. Wenn Nutzer Benachrichtigungen oder geplante Zustellungen erstellt haben, die auf LookML-Dashboards basieren, die im ursprünglichen Block (Erweiterung) definiert sind, werden diese Benachrichtigungen oder Zeitpläne deaktiviert oder schlagen fehl, sobald diese Blockierung auf dem Looker Marketplace deinstalliert wird.

Diese Benachrichtigungen oder geplanten Zustellungen müssen Sie auf den neuen LookML-Dashboards der Suchfilter neu erstellen. Looker-Administratoren und -Nutzer mit den entsprechenden Berechtigungen für Zeitpläne und Benachrichtigungen können auf den Seiten Benachrichtigungen und Zeitpläne im Administratorbereich nach den Namen der Dashboards des Typs „Erweiterungen“ (Erweiterungen) suchen und dann nach Bedarf neue Benachrichtigungen oder geplante Zustellungen auf den entsprechenden Dashboards erstellen.

Außerdem müssen Sie bei Bedarf alle anderen Looker-Inhalte ändern, die auf den ursprünglichen Block mit den Erkundungs- oder LookML-Dashboards verweisen, sodass er auf den neuen Block (Suchfilter) verweist.

Ursprüngliche Blockierung deinstallieren

So deinstallieren Sie die Version des mit Erweiterung erstellten Blocks:

  1. Klicken Sie in der Looker-Menüleiste auf das Shop-Symbol, um zum Looker Marketplace zu wechseln.

  2. Wählen Sie im Looker Marketplace im linken Navigationsbereich Manage (Verwalten) aus, um die Seite Manage (Verwalten) zu öffnen.

  3. Klicken Sie auf der Seite Verwalten auf das Papierkorbsymbol, um den ursprünglichen (Erweiterung)-Block zu deinstallieren. Anhand der Versionsnummern können Sie die Liste der erweiterten Blockierungen von der Liste der Optimierungen unterscheiden. Der Erweiterungsblock ist eine Hauptversion hinter dem Suchfilterblock. Beispielsweise kann der Erweiterungsblock Version 1.0.4 und der Suchfilter-Block Version 2.0.0 sein.

Nach der Deinstallation der Blockierung wird die ursprüngliche Blockerweiterung (Erweiterung) aus der linken Navigationsleiste in der Looker-Instanz und aus dem Bereich Erkunden entfernt. Die LookML-Dashboards werden aus dem Ordner LookML-Dashboards entfernt und alle Benachrichtigungen oder geplanten Zustellungen, die auf den Block-LookML-Dashboards basieren, werden deaktiviert bzw. schlagen fehl.

Fehlerbehebung bei Blockierungen

Wenn auf einem Marktplatzblock Fehler angezeigt werden, stimmt Ihr Schema möglicherweise nicht mit der Struktur des Blocks überein.

Sie können auch überprüfen, ob die Konstanten, die bei der Installation des Blocks angegeben wurden und die Verbindung, Datenbank oder das Schema des Blocks darstellen, korrekt definiert wurden. Dazu haben Sie folgende Möglichkeiten:

  1. Klicken Sie in der Looker-Menüleiste auf das Shop-Symbol, um zum Looker Marketplace zu wechseln.

  2. Wählen Sie im Looker Marketplace im linken Navigationsbereich Manage (Verwalten) aus, um die Seite Manage (Verwalten) zu öffnen.

  3. Klicken Sie auf der Seite Verwalten auf das Zahnradsymbol, um die zugehörigen Konfigurationseinstellungen aufzurufen.

  4. Prüfen Sie im Fenster Konfigurationen aktualisieren, ob der Block richtig konfiguriert ist. Klicken Sie auf Aktualisieren, nachdem Sie Änderungen vorgenommen haben, um die Änderungen zu speichern und das Fenster der Blockkonfiguration zu schließen.