Stellen Sie sich vor, Sie haben viele Nutzende, die sich ein Explore teilen, aber je nach Team oder Region unterschiedliche Anwendungsfälle haben. Jeder Nutzer möchte nur die Felder sehen, die für seinen jeweiligen Anwendungsfall gelten. Um den unterschiedlichen Anforderungen Ihrer Nutzer gerecht zu werden, können Sie LookML-Verfeinerungen verwenden, um vorhandene Ansichten und Explores anzupassen, ohne die ursprüngliche LookML ändern zu müssen. Anschließend können Sie diese verfeinerten Ansichten und Explores in separate, dedizierte Modelldateien einbinden, die an die unterschiedlichen Anforderungen Ihrer Nutzer angepasst sind.
Diese Seite enthält ein Beispiel für die Verwendung von LookML-Verfeinerungen, um eine einzelne Basisansicht anzupassen und unterschiedliche Explores für zwei verschiedene Teams in Ihrem Unternehmen zu erstellen. Sie enthält auch Beispiele für das Ausblenden und Hinzufügen von Feldern in verfeinerten Inhalten.
Produkte
- LookML-Ansichten
- LookML-Explores
- LookML-Modelldateien
- LookML-Verfeinerungen
- Generische LookML-Dateien für Gehäuse-Suchfilter
- Der LookML-Parameter
include
- Der LookML-Parameter
hidden
(für Felder) - Optional: Modellzugriff auf bestimmte Modelle für Betrachter, die von einem Looker-Administrator konfiguriert wurden
Vorbereitung
- Ein konfiguriertes LookML-Projekt
- Berechtigungen zum Entwickeln von LookML
- Erfahrung in der Entwicklung von Modellen in LookML, einschließlich Vertrautheit mit fortgeschritteneren LookML-Konzepten wie Optimierungen und extends
Beispiel: Mehrere benutzerdefinierte Explores aus derselben Basisansicht erstellen
Angenommen, Sie haben ein Explore Verkäufe, das Daten zu Kunden, Käufen, Versand und Standort enthält. Die Marketing- und Logistikteams Ihres Unternehmens müssen sich diese Daten ansehen, aber sie konzentrieren sich jeweils auf andere Felder im Explore Vertrieb.
Sie möchten im Field Picker „Explore“ nur die Felder anzeigen, die für jedes Team nützlich sind, um das Erkunden zu erleichtern. Dazu können Sie zwei verschiedene Optimierungen der Datenansicht Sales (Verkaufsanalyse) und der Ansicht sales
definieren, auf der sie basiert. Im Explore des Marketingteams können Felder mit Bezug zu Kunden und Kauftrends angezeigt werden, während im Explore des Logistikteams Felder mit Bezug zu Versand und Standort angezeigt werden können. Außerdem haben Sie die Möglichkeit, jeder verfeinerten Ansicht neue Felder hinzuzufügen, die den Anforderungen des jeweiligen Teams entsprechen.
Derzeit werden im Field Picker für das Explore Sales alle Felder der Ansicht Sales angezeigt:
Im Field Picker werden auch alle Felder aus der Ansicht Users (Nutzer) angezeigt:
Sie können die Ansicht sales
verfeinern, um zwei separate Explores zu erstellen, die nur die Felder enthalten, die für die Marketing- und Logistikteams von Interesse sind. Gehen Sie dazu so vor:
Erstellen Sie eine neue LookML-Datei, in diesem Beispiel eine Datei namens
base_analysis.lkml
, die den LookML-Code für das Sales-Explore enthält, das auf der Ansichtsales
und der verknüpftenusers
-Ansicht basiert. Da Sie das grundlegende Explore vonsales
und die entsprechenden Ansichten verwenden möchten, um ein benutzerdefiniertes Explore für jedes Team zu erstellen, können Sie alle gemeinsam genutzten Felder und Eigenschaften an einem einzigen Ort definieren, z. B. in einer einzigen Datei.# 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 } }
Erstellen Sie zwei separate Dateien für die Verfeinerungen des Sales-Explores, das Sie für jedes Team definieren. Sie können die Dateien
marketing_analysis.lkml
undlogistics_analysis.lkml
nennen. Der unten gezeigte LookML-Code verfeinert das Basis-Explore des Typssales
, wie es zuvor in der Dateibase_analysis.lkml
definiert wurde, um das Label Sales Analysis for Marketing Team (Verkaufsanalyse für Marketingteam) in einer neuen Datei namensmarketing_analysis.lkml
hinzuzufügen. Mit der Anweisunginclude: "/base/base_analysis.lkml"
wird auf den Inhalt der Dateibase_analysis.lkml
innerhalb der Dateimarketing_analysis.lkml
verwiesen.# marketing_analysis.lkml include: "/base/base_analysis.lkml" explore: +sales { label: "Sales Analysis for Marketing Team" }
Erstellen Sie für jedes Team eine separate Modelldatei, z. B.
ecommerce_marketing.model
undecommerce_logistics.model
. Indem Sie die verschiedenen Optimierungen in separaten Modellen für jedes Team aufführen, können Sie denselben Satz von Ansichten und Explores mehrmals optimieren, ohne die Anpassungen zu überschreiben, die Sie für den Anwendungsfall eines Teams vorgenommen haben. Weitere Informationen finden Sie auf der Dokumentationsseite LookML-Verfeinerungen.Fügen Sie mit dem Parameter
include
marketing_analysis.lkml
in das Modellecommerce_marketing.model
undlogistics_analysis.lkml
im Modellecommerce_logistics.model
ein.Fügen Sie den Dateien
marketing_analysis.lkml
undlogistics_analysis.lkml
bei Bedarf weitere Suchfilter hinzu. Sie können beispielsweise unnötige Felder ausblenden und den optimierten Explores für jedes Team neue Felder hinzufügen.
Optional kann ein Looker-Administrator den Modellzugriff für jedes dedizierte Modell konfigurieren, um bestimmten Teams den Zugriff auf Explore-Ebene zu gewähren.
Unnötige Felder in den optimierten Explores ausblenden
Sie können die Ansicht sales
in der Datei marketing_analysis.lkml
wie folgt verfeinern, um die Dimensionsgruppen Zurückgegeben, Versendet, Zugestellt und Erstellt sowie die Dimension Status auszublenden, da diese Felder vom Marketingteam nicht verwendet werden:
# 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
}
}
Analog können Sie die folgende LookML in der Datei logistics_analysis.lkml
verwenden, um Felder auszublenden, die das Logistikteam nicht benötigt (z. B. Gewinn, Sonderangebotspreis und Durchschnittlicher Verkaufspreis):
# 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
}
}
Da das Logistikteam keine personenbezogenen Daten über Kunden wie Namen, Alter oder E-Mail-Adresse benötigt, können Sie auch einen Suchfilter für die verknüpfte users
-Ansicht in der logistics_analysis.lkml
-Datei hinzufügen, um diese Felder aus dem Explore auszublenden:
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
}
}
Neue Felder zu den optimierten Explores hinzufügen
In der optimierten Ansicht sales
können Sie auch neue Felder erstellen, die für das Marketingteam von Interesse sind. Sie können beispielsweise Felder für Durchschnittlicher Verkaufspreis, Gesamtverkaufspreis und Durchschnittliche Ausgaben pro Nutzer in der optimierten Ansicht sales
hinzufügen:
Mit dem folgenden LookML-Code können Sie diese Felder zur verfeinerten sales
-Ansicht in der marketing_analysis.lkml
-Datei hinzufügen:
# 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*]
}
}
Die von Ihnen erstellte Marketing-Explore enthält die neuen Felder in der Ansicht Verkäufe zusätzlich zu den Feldern in der verbundenen Ansicht Nutzer. Die Dimensionsgruppen Zurückgegeben, Versendet, Zugestellt und Erstellt und die Dimension Status sind ausgeblendet, da sie vom Marketingteam nicht benötigt werden.
Ebenso können Sie für das Logistikteam neue Felder erstellen, die für das Logistikteam nützlich sind, z. B. Versandzeit-Buckets und Durchschnittliche Versandzeit:
Mit dem folgenden LookML-Code können Sie diese Felder zur verfeinerten sales
-Ansicht in der logistics_analysis.lkml
-Datei hinzufügen:
# 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} ;;
}
}
Die von Ihnen erstellte Logistik-Explore enthält die neuen Felder in der Ansicht Verkäufe zusätzlich zu den Feldern in der verknüpften Ansicht Nutzer. Die Felder Gewinn, Sonderangebotspreis und Durchschnittlicher Verkaufspreis in der Ansicht Verkauf sowie die Felder Alter, E-Mail-Adresse, Vorname, Nachname und Erstellt aus dem Explore Nutzer werden ausgeblendet, da sie für das Logistikteam nicht benötigt werden.
Jedes Team hat jetzt ein Explore, das besser auf seine spezifischen Anforderungen zugeschnitten ist. Dieser Ansatz erfordert zwar etwas mehr Einrichtung im Vorfeld, aber wenn Sie die Kerndaten an einem Ort aufbewahren, können Sie deren Auffindbarkeit und Verwendung vereinfachen.