Looker Blocks

Looker Blocks sind vorgefertigte Datenmodelle für gängige Analysemuster und Datenquellen. Profitieren Sie von der Arbeit, die wir bereits für Sie erledigt haben, und passen Sie die Blocks anschließend exakt an Ihre Spezifikationen an. Von optimierten SQL-Mustern bis hin zu voll ausgereiften Datenmodellen – Looker Blocks können als Ausgangspunkt für eine schnelle und flexible Datenmodellierung in Looker verwendet werden.

Sie können Blocks aus verschiedenen Quellen beziehen, um sie anzupassen und Ihrer Looker-Instanz hinzuzufügen. Dazu gehören:

  • Der eigenständige Looker Marketplace, auf dem Sie nach Blocks suchen und auf den Quellcode zugreifen können.
  • Der Looker Marketplace, auf den Sie über Ihre Looker-Instanz zugreifen können. Auf diesem Marketplace können Sie Looker Blocks – sogenannte „Modelle“ – direkt in Ihrer Looker-Instanz suchen und installieren. Weitere Informationen zum Installieren von Tools aus dem Looker Marketplace finden Sie auf der Dokumentationsseite Looker Marketplace verwenden.

Arten von Looker Blocks

Looker Blocks bieten eine Vielzahl von Funktionen, z. B.:

  • Für Datenblöcke, die sowohl öffentliche Datasets als auch vollständige LookML-Modelle enthalten, muss das LookML-Modell aus einem GitHub-Repository kopiert werden, um auf die modellierten Tabellen zuzugreifen. Diese Blöcke können nicht angepasst werden. Eine detaillierte Anleitung finden Sie auf dieser Seite unter Datenblöcke verwenden.

  • Anwendungen zur Datenerhebung wie Segment und Snowplow erfassen Ereignisse in einem relativ standardisierten Format. So lassen sich Vorlagen für Designmuster erstellen, die für die Datenbereinigung, -transformation und -analyse verwendet werden können und von allen Kunden genutzt werden können, die diese Anwendungen verwenden.

  • Mit anderen Webanwendungen wie Salesforce können Sie benutzerdefinierte Felder für Ihre internen Nutzer hinzufügen. Dadurch werden Daten in einem weniger standardisierten Format erstellt. Daher können wir einen Teil des Datenmodells als Vorlage verwenden, um die Analyse zu starten. Sie müssen jedoch den nicht standardisierten Teil anpassen.

  • Es gibt auch Blöcke für allgemeine geschäftliche Erkenntnisse. Diese Blöcke sind optimierte SQL- oder LookML-Designmuster, die unabhängig von der Datenquelle sind. Viele Unternehmen möchten beispielsweise den Lifetime-Wert eines Kunden im Zeitverlauf analysieren. Diese Muster basieren auf einigen Annahmen, können aber an Ihre spezifischen geschäftlichen Anforderungen angepasst werden. Diese Muster spiegeln die Sichtweise von Looker auf die beste Methode zur Durchführung bestimmter Arten von Analysen wider.

Looker Blocks können im Verzeichnis der öffentlichen Instanz des Looker Marketplace unter marketplace.looker.com durchsucht werden.

Looker Block installieren

Wenn Sie einen Looker Block aus dem Marketplace installieren möchten, der mit Ihrer Looker-Instanz verknüpft ist, folgen Sie der Anleitung zum Installieren eines Tools aus dem Marketplace.

Wenn Sie einen Looker Block von marketplace.looker.com installieren möchten, folgen Sie der Anleitung im Quellcode des Blocks.

Für jeden Looker Block gibt es eine spezifische Nutzungsanleitung.

Standardisierung und Anpassung

Der Grad der Anpassung, der für Ihren Block erforderlich ist, hängt davon ab, wie standardisiert Ihr Datenbankschema ist. Für die meisten Looker Blocks ist eine Anpassung an Ihr Datenschema erforderlich.

In einigen Blöcken werden sowohl Explores als auch Ansichten in derselben Datei dargestellt. Das dient der Übersichtlichkeit. Im Allgemeinen sollten Sie jedoch die entsprechenden Abschnitte von LookML an den entsprechenden Stellen in Ihrem Datenmodell kopieren. Weitere Informationen finden Sie auf der Dokumentationsseite Dateitypen in einem LookML-Projekt.

In einigen Fällen müssen Sie möglicherweise neue LookML-Dateien in Ihrem Datenmodell erstellen, um die Beispiele zu speichern.

Datenblöcke verwenden

Datenblöcke sind eine spezielle Art von Looker Block, die sowohl das Dataset als auch das Datenmodell enthalten. Datenblöcke umfassen öffentliche Datenquellen wie:

  • Demografische Daten: Allgemeine demografische Messwerte aus der American Community Survey auf Bundesstaats-, Landkreisebene, Ebene der Postleitzahlengebiete und sogar auf Ebene der Zensusblockgruppen.
  • Wetterdaten: Wetterberichte für die USA auf Postleitzahlenebene von 1920 bis zum Vortag. Dieser Block wird jede Nacht aktualisiert.

Die Vorgehensweise für den Zugriff auf das Dataset eines Datenblocks hängt von Ihrem Datenbankschema ab. In den folgenden Abschnitten finden Sie eine Anleitung für den Zugriff auf Datasets in diesen Datenbanken:

Auf Datasets in Google BigQuery zugreifen

Wenn Sie ein Google BigQuery-Konto haben, können Sie auf die von Looker in BigQuery gehosteten Datasets zugreifen. Springen Sie auf dieser Seite zum Abschnitt Datenblöcke zu Projekten hinzufügen.

Wenn Sie noch kein Google BigQuery-Konto haben, können Sie eine kostenlose Testversion einrichten und dann auf die öffentlichen Datasets von Looker in BigQuery zugreifen.

Auf Datasets in anderen Datenbanken zugreifen

Transformierte Daten für Amazon Redshift-, MySQL-, PostgreSQL- oder Oracle-Datasets sind sowohl in Google Cloud Service als auch in S3 öffentlich verfügbar, sodass Sie sie direkt in die Datenbank Ihrer Wahl importieren können.

Außerdem haben wir die Data Definition Language (DDL) für jedes der Datasets im GitHub-Repository zur Verfügung gestellt. Die DDL-Anweisungen müssen möglicherweise für die Datentypen in Ihrer ausgewählten Datenbank geändert werden, sollten aber eine Vorstellung von den Spaltentypen für jede Tabelle vermitteln.

Laden Sie Daten direkt von einem der folgenden Speicherorte herunter:

Auf das LookML-Modell zugreifen

Verzweigen Sie eines unserer GitHub-Repositories in ein neues GitHub-Repository (entweder von Looker oder von Ihrem Unternehmen gehostet), das Sie dann erweitern oder verfeinern können:

Datenblöcke zu Projekten hinzufügen

Neben der in diesem Abschnitt beschriebenen Methode können Sie auch LookML-Verfeinerungen verwenden, um die LookML von Ansichten und Explores in Ihren Projekten zu erweitern.

So fügen Sie Ihrem Projekt einen Datenblock hinzu:

  1. Fügen Sie Ihrer Looker-Instanz ein neues Projekt hinzu.

  2. Verzweigen oder kopieren Sie die zuvor genannten GitHub-Repositories, um auf vorgefertigte LookML zuzugreifen. Erstellen Sie unbedingt ein neues GitHub-Repository.

  3. Entfernen Sie andere Datenbankdialektdateien aus dem Repository. Looker Blocks enthalten in der Regel Dateien für Google BigQuery, Amazon Redshift und Snowflake. Wenn Sie beispielsweise Datenblöcke in Google BigQuery einrichten, benötigen Sie nur die Ansichtsdateien, die Explore-Datei und die Modelldatei für Google BigQuery.

  4. Ersetzen Sie den Verbindungsnamen in Ihrer Modelldatei durch Ihre Datenbankverbindung, in der sich die Daten für Datenblöcke befinden. Wenn Sie Google BigQuery oder Snowflake verwenden, verwenden Sie die Datenbankverbindung, von der aus Sie erweitern oder verfeinern.

    Die gesamte Join-Logik ist in einer .explore-Datei in jedem der Repositories enthalten. Diese Datei fügen Sie in den folgenden Schritten ein, nachdem Sie Ihr Projektmanifest eingerichtet haben.

  5. Erstellen Sie in Ihrem Haupt-Looker-Projekt, in dem Sie Datenblöcke erweitern oder verfeinern möchten, eine Projektmanifestdatei.

  6. Fügen Sie der Projektmanifestdatei die folgende LookML hinzu, um auf Datenblöcke in Ihrem Haupt-Looker-Projekt zu verweisen:

    project_name: "<your_project_name\>"

    local_dependency: {
      project: "<project_name_of_datablock\>"
    }

Überlegungen und Optionen zur Einrichtung

Google BigQuery: Verwenden Sie unbedingt die richtigen modellierten Dateien. Wenn Sie Google BigQuery verwenden, sollten Sie auf alle Dateien mit _bq_ im Dateinamen verweisen. Möglicherweise müssen Sie unsere Google BigQuery-Modelldialekte an Ihren eigenen Datenbankdialekt anpassen.

Erweiterungen: Alle unsere Projekte sind so eingerichtet, dass Erweiterungen aus Explore-Dateien möglich sind, da Modellerweiterungen Probleme mit mehreren Verbindungen verursachen können.

Abgeleitete Tabellen verknüpfen: Weitere Informationen finden Sie in unserer Dokumentation zu nativen abgeleiteten Tabellen. Sie können Looker SQL-Code auf verschiedenen Aggregationsebenen für unsere öffentlich verfügbaren Datasets schreiben lassen und sie in Ihr Modell einfügen.

Ergebnismengen zusammenführen: Sie können auch Ergebnismengen aus unseren Datasets mit Ihren Daten zusammenführen, indem Sie Abfrageergebnismengen kombinieren.

Beispiel für die Einrichtung des demografischen Datasets

  1. Sie können auf Daten zugreifen, indem Sie Rohdaten aus unseren S3- oder Google Cloud Service-Buckets herunterladen oder eine Verbindung zu einer Looker-Datenbank herstellen.

  2. Importieren Sie das Modell Demografischer Datenblock aus LookML als separates Projekt in Ihre Looker-Instanz.

  3. Verwenden Sie den include Parameter, um die Ansichtsdatei einzufügen.

  4. Erweitern oder verfeinern Sie dann die Ansichtsdatei oder verwenden Sie native abgeleitete Tabellen, um Daten auf der Aggregationsebene zu erhalten, die für Explores erforderlich ist.

    In unserem Beispiel sind die demografischen Daten auf einer anderen Aggregationsebene als unser E-Commerce-Dataset (Blockgruppe im Vergleich zu Postleitzahl). Daher verwenden wir integrierte abgeleitete Tabellen, um Statistiken auf Postleitzahlebene zu aggregieren. So werden unübersichtliche Many-to-Many-Joins vermieden:

      include: "/american_community_survey/bq.explore"
    
      view: zipcode_income_facts {
        derived_table: {
          persist_for: "10000 hours"
          explore_source: fast_facts {
            column: ZCTA5 { field: tract_zcta_map.ZCTA5 }
            column: income_household { field: bg_facts.avg_income_house }
            column: total_population { field: bg_facts.total_population }
          }
        }
        dimension: ZCTA5 {}
        dimension: income_household {
          hidden: yes
        }
    
  5. Ansichtsdateien in das Modell einfügen:

      include: "acs*.view"
    
      explore: order_items {
        join: users {
          sql_on: ${users.id} = ${order_items.user_id} ;;
          type: left_outer
          relationship: many_to_one
        }
    
        join: zipcode_income_facts {
          sql_on: ${users.zip} = ${zipcode_income_facts.ZCTA5} ;;
          type: left_outer
          relationship: many_to_one
        }
      }
    
  6. Daten analysieren und visualize.