Angenommen, Sie haben viele Nutzer, die eine explorative Datenanalyse gemeinsam nutzen, aber je nach Team oder Region unterschiedliche Anwendungsfälle haben. Jeder Nutzer möchte nur die Felder sehen, die für seine individuellen Anwendungsfälle gelten. Mit LookML-Verfeinerungen können Sie vorhandene Ansichten und Explores anpassen, ohne die ursprüngliche LookML ändern zu müssen. So können Sie die unterschiedlichen Anforderungen Ihrer Nutzer erfüllen. Sie können diese optimierten Ansichten und Explores dann in separaten, speziellen Modelldateien einfügen, die an die unterschiedlichen Anforderungen Ihrer Nutzer angepasst sind.
Auf dieser Seite finden Sie ein Beispiel dafür, wie Sie mit LookML-Verfeinerungen eine einzelne Basisansicht anpassen und unterschiedliche Explores für zwei verschiedene Teams in Ihrem Unternehmen erstellen. Außerdem enthält es Beispiele zum Ausblenden und Hinzufügen von Feldern in optimierten Inhalten.
Zutaten
- LookML-Ansichten
- LookML-Explores
- LookML-Modelldateien
- LookML-Verfeinerungen
- Generische LookML-Dateien für Verfeinerungen für Unterkünfte
- Der LookML-Parameter
include
- Der LookML-Parameter
hidden
(für Felder) - Optional: Modellzugriff auf bestimmte Modelle für Betrachter, konfiguriert von einem Looker-Administrator
Vorbereitung
- Ein konfiguriertes LookML-Modell
- Berechtigungen zum Entwickeln von LookML
- Erfahrung mit der Entwicklung von Modellen in LookML, einschließlich Kenntnissen über erweiterte LookML-Konzepte wie Optimierungen und Erweiterungen
Beispiel: Mehrere benutzerdefinierte Explores aus derselben Basisansicht erstellen
Angenommen, Sie haben eine explorative Datenanalyse vom Typ Umsätze mit Daten zu Kunden, Käufen, Versand und Standort. Sowohl das Marketing- als auch das Logistikteam Ihres Unternehmens müssen diese Daten untersuchen, wobei sich beide auf unterschiedliche Felder im explorativen Datenanalysetool Umsatz konzentrieren.
Sie möchten nur die Felder in der Explore-Feldauswahl anzeigen, die für jedes Team nützlich sind, um die explorative Datenanalyse zu vereinfachen. Dazu können Sie zwei verschiedene Einschränkungen für die explorative Datenanalyse Umsätze und die zugrunde liegende sales
-Ansicht definieren. Im Explore des Marketingteams können Felder zu Kunden und Kauftrends angezeigt werden, während im Explore des Logistikteams Felder zu Versand und Standort angezeigt werden können. Sie können jeder Ansicht auch neue Felder hinzufügen, die den Anforderungen der einzelnen Teams entsprechen.
Derzeit werden in der Feldauswahl für die explorative Datenanalyse Umsatz alle Felder aus der Ansicht Umsatz angezeigt:
In der Auswahl werden auch alle Felder aus der verbundenen Ansicht 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
base_analysis.lkml
, die die LookML für das Umsatz-Explore enthält. Dieses basiert auf der Ansichtsales
und der zusammengeführten Ansichtusers
. Da Sie die grundlegendesales
-Explore und die zugehörigen Ansichten verwenden möchten, um für jedes Team eine benutzerdefinierte Explore zu erstellen, können Sie alle freigegebenen Felder und Properties 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 explorativen Datenanalyse-Objekts Umsatz, die Sie für jedes Team definieren. Sie können die Dateien
marketing_analysis.lkml
undlogistics_analysis.lkml
nennen. Im folgenden LookML-Code wird das Basis-Exploresales
, wie in der Dateibase_analysis.lkml
definiert, verfeinert, um in einer neuen Datei namensmarketing_analysis.lkml
das Label Sales Analysis for Marketing Team hinzuzufügen. Mit der Anweisunginclude: "/base/base_analysis.lkml"
wird der Inhalt der Dateibase_analysis.lkml
für Verweise in der Dateimarketing_analysis.lkml
verfügbar gemacht.# 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
. Wenn Sie die verschiedenen Verfeinerungen in separaten Modellen für jedes Team speichern, können Sie dieselbe Gruppe von Ansichten und explorativen Datenanalysen mehrmals verfeinern, ohne die Anpassungen zu überschreiben, die Sie für den Anwendungsfall eines Teams vorgenommen haben. Weitere Informationen finden Sie auf der Seite LookML-Optimierungen.Fügen Sie mit dem Parameter
include
marketing_analysis.lkml
in dasecommerce_marketing.model
-Modell undlogistics_analysis.lkml
in dasecommerce_logistics.model
-Modell ein.Fügen Sie den Dateien
marketing_analysis.lkml
undlogistics_analysis.lkml
nach Bedarf weitere Verfeinerungen 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 spezielle Modell konfigurieren, um bestimmten Teams Zugriff auf Explore-Ebene zu gewähren.
Nicht benötigte Felder aus den optimierten Explores ausblenden
Sie können die sales
-Ansicht in der marketing_analysis.lkml
-Datei so verfeinern, dass die Dimensionen Zurückgegeben, Versandt, Zugestellt und Erstellt sowie die Dimension Status ausgeblendet werden, 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
}
}
Ebenso können Sie mit der folgenden LookML in der Datei logistics_analysis.lkml
Felder ausblenden, die das Logistikteam nicht benötigt, z. B. Gewinn, Sonderangebotspreis und Durchschnittlicher Sonderangebotspreis:
# 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-Adressen sehen muss, können Sie auch eine Einschränkung für die zusammengeführte users
-Ansicht in der Datei logistics_analysis.lkml
hinzufügen, um diese Felder im 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
}
}
Den optimierten explorativen Datenanalysen neue Felder hinzufügen
Sie können auch neue Felder erstellen, die für das Marketingteam von Interesse sind.sales
Sie können beispielsweise in der Ansicht „sales
“ die Felder Durchschnittlicher Sonderangebotspreis, Gesamtwert des Sonderangebotspreises und Durchschnittliche Ausgaben pro Nutzer hinzufügen:
Mit der folgenden LookML können Sie diese Felder der Ansicht „sales
“ in der Datei „marketing_analysis.lkml
“ 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*]
}
}
Das von Ihnen erstellte explorative Datenanalyse für Marketing enthält neben den Feldern in der zusammengeführten Datenansicht Nutzer auch die neuen Felder in der Datenansicht Umsatz. Die Dimensionsgruppen Zurückgegeben, Versandt, Zugestellt und Erstellt sowie die Dimension Status sind ausgeblendet, da sie für das Marketingteam nicht erforderlich sind.
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 der folgenden LookML können Sie diese Felder der Ansicht „sales
“ in der Datei „logistics_analysis.lkml
“ 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 explorative Datenanalyse für Logistik enthält neben den Feldern in der zusammengeführten Datenansicht Nutzer auch die neuen Felder in der Datenansicht Umsatz. Die Felder Gewinn, Sonderangebotspreis und Durchschnittlicher Sonderangebotspreis aus der Ansicht Umsätze und die Felder Alter, E-Mail, Vorname, Nachname und Erstellt aus der explorativen Datenanalyse Nutzer sind ausgeblendet, da sie für das Logistikteam nicht erforderlich sind.
Jedes Team hat jetzt eine explorative Datenanalyse, die besser auf seine spezifischen Anforderungen zugeschnitten ist. Dieser Ansatz erfordert zwar etwas mehr Einrichtungsaufwand, aber wenn Sie die Hauptdaten an einem Ort aufbewahren, können Sie sie leichter finden und verwenden.