Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Der Katalog-Explorer stellt eine visuelle Schnittstelle zum Erstellen von Metrikansichten bereit. Sie definieren Felder und Measures interaktiv, ohne eine YAML-Definition zu schreiben.
Diese Seite führt Sie durch die Erstellung einer Metrikansicht in der Benutzeroberfläche des Katalog-Explorers. Ein komplexeres Beispiel mit Verknüpfungen und erweiterten Kennzahlen finden Sie unter Tutorial: Erstellen einer Metrikansicht mit Verknüpfungen und Datenmodellierung.
Voraussetzungen
Stellen Sie vor dem Erstellen einer Metrikansicht sicher, dass Sie über die folgenden Berechtigungen verfügen:
-
SELECTBerechtigungen für die tabellenähnliche Ressource oder SQL-Abfrage , die als Quelle verwendet wird. -
CREATE TABLEundUSE SCHEMABerechtigungen im Schema, in dem Sie die Metrikansicht erstellen möchten. -
USE CATALOGBerechtigungen für den übergeordneten Katalog. -
CAN USEBerechtigung für ein SQL-Warehouse oder eine andere Rechenressource, die mit Databricks Runtime 17.3 oder höher läuft.
Ein Metastoreadministrator oder Katalogbesitzer kann all diese Berechtigungen gewähren. Ein Schemabesitzer oder ein Benutzer mit MANAGE-Berechtigungen kann USE SCHEMA- und CREATE TABLE-Berechtigungen für das Schema erteilen.
Note
Das Erstellen einer Metrikansicht wird für Databricks Runtime 16.4 und höher unterstützt. Diese Seite verwendet Features, die Databricks Runtime 17.3 oder höher erfordern, sodass 17.3 das Minimum für das Beispiel ist. Einzelne YAML-Features können eine spätere Laufzeit erfordern. Die Mindestlaufzeit für jedes Feature finden Sie unter Verfügbarkeit der Metrikansichtsfeatures.
Erstellen einer Metrikansicht
Erstellen Sie eine Metrikansicht im Katalog-Explorer mit einer der folgenden Methoden:
- Benutzeroberflächen-Editor: Definieren Sie auf der Registerkarte " Ui " Felder und Measures interaktiv, ohne Code zu schreiben.
-
YAML-Editor: Klicken Sie auf die
<>Schaltfläche, um die Definition direkt zu bearbeiten. Informationen zur Syntax finden Sie in der YaML-Syntaxreferenz zur Metrikansicht. Sie können auch eine YAML-Definition in einer SQL-Anweisung verwenden, um eine Metrikansicht zu erstellen. Das vollständige Beispiel in YAML und SQL finden Sie unter Definieren einer Metrikansicht in SQL oder YAML. -
Genie Code: Öffnen Sie Genie Code aus dem
Schaltfläche in der oberen rechten Ecke und beschreiben Sie, was Sie in natürlicher Sprache wünschen. Siehe "Genie Code verwenden".
Die folgenden Schritte verwenden die Registerkarte UI und die samples.tpch.orders Tabelle, die in jedem Arbeitsbereich verfügbar sind, um eine Beispielansicht für eine Vertriebsanalysemetrik zu erstellen. Die abgeschlossene Metrikansicht entspricht der Definition in "Definieren einer Metrikansicht" in SQL oder YAML. Weitere Informationen zu diesem Dataset finden Sie unter Beispiel-Datasets.
Schritt 1: Erstellen der Metrikansicht und Öffnen des Editors
- Klicken Sie auf
Katalog in der Arbeitsbereich-Randleiste.
- Verwenden Sie die Suchleiste, um
samples.tpch.orderszu finden, und klicken Sie dann auf den Tabellennamen. - Klicken Sie auf "Metrische Ansicht erstellen>". Geben Sie im Dialogfeld " Metrikansicht erstellen " einen Namen ein, wählen Sie einen Katalog und ein Schemaziel aus, und klicken Sie dann auf "Erstellen".
Der Editor wird mit der Registerkarte UI geöffnet. Der Editor fügt automatisch alle Quellspalten auf der Registerkarte Felder hinzu und fügt eine Beispiel-COUNT(*)Kennzahl hinzu.
Schritt 2: Hinzufügen einer Verknüpfung
Im Beispiel wird die customer Tabelle verknüpft, sodass Kundenattribute als Felder verfügbar sind. Um die Verknüpfung hinzuzufügen, klicken Sie in der oberen rechten Ecke des Editors auf die Verknüpfungsschaltfläche:
- Wählen Sie zum Verbinden der Quelle
samples.tpch.customeraus, und klicken Sie auf Hinzufügen. - Geben Sie
customerals Verknüpfungsname ein. - Verwenden Sie die Dropdown-Listen, um die Verknüpfungsbedingung auf
source.o_custkey = customer.c_custkeyfestzulegen. Wenn Sie mehr als eine Verknüpfungsspalte hinzufügen möchten, klicken Sie auf +Verknüpfungsschlüssel. Wenn Sie eine andere Bedingung als Gleichheit festlegen möchten, klicken Sie auf "Ausdruck ", und verfeinern Sie die Bedingung. - Wählen Sie unter VerknüpfungskardinalitätViele-zu-eins aus. Anleitung zur Auswahl einer Kardinalität finden Sie unter Verbundkardinalität.
- Wählen Sie unter Query-Performance At most one match aus. Jede Bestellung entspricht höchstens einem Kunden, sodass diese Optimierung sicher ist und in der YAML-Definition
at_most_one_match: truesetzt. - Klicken Sie auf "Beitreten".
- Klicken Sie im Dialogfeld " Felder hinzufügen " auf "Alle Spalten hinzufügen ", um alle Spalten dynamisch aus der Quelltabelle zu importieren. Wenn Sie stattdessen einzelne Spalten hinzufügen möchten, überspringen Sie diesen Schritt. Felder aus dem verknüpften Objekt werden in der Dropdownliste mit Feldern aus der Quelle angezeigt.
Verknüpfungen kombinieren die Quelltabelle mit anderen Tabellen oder Abfragen. Informationen zu Verknüpfungsmodellierungskonzepten, einschließlich Stern- und Schneeflakeschemas und YAML-Mustern, finden Sie unter "Arbeiten mit Verknüpfungen".
Schritt 3: Definieren eines Filters
Die vollständige YAML-Definition weiter unten auf dieser Seite enthält einen Filter, der die Metrikansicht auf Bestellungen beschränkt, die nach dem 1. Januar 1990 aufgegeben wurden.
Ausdrücke mit Builder oder Benutzerdefiniert eingeben
Wenn Sie einen Filter, ein Feld oder ein Measure definieren, legen Sie dessen Ausdruck mithilfe einer von zwei Optionen im Abschnitt "Ausdruck " fest:
- Generator: Wählen Sie aus kontextabhängigen Dropdowns aus, und der Editor verfasst den SQL-Ausdruck für Sie.
- Benutzerdefiniert: Geben Sie den SQL-Ausdruck direkt ein.
Die folgenden Schritte verwenden Builder für einfache Spaltenfilter, Transformationen und Aggregationen sowie Custom für Ausdrücke, die mit Builder nicht erstellt werden können, wie CASE-Anweisungen und zusammengesetzte Measures.
So definieren Sie den Filter:
- Klicken Sie auf
Filtern Sie in der oberen rechten Ecke des metrischen Ansichts-Editors.
- Festlegen des Filterausdrucks:
- Wählen Sie im Generator die Spalte
source.o_orderdate, den OperatorGreater thanund den Wert1990-01-01aus. - Schreiben Sie in "Benutzerdefiniert" den SQL-Ausdruck
source.o_orderdate > '1990-01-01'.
- Wählen Sie im Generator die Spalte
Ein Filter gilt für alle Abfragen, die auf die Metrikansicht verweisen. Informationen zu Filtermodellierungskonzepten und YAML-Mustern finden Sie unter Anwenden von Filtern.
Schritt 4: Hinzufügen von Feldern
Wenn Sie einen Filter, ein Feld oder ein Measure definieren, legen Sie dessen Ausdruck mithilfe einer von zwei Optionen im Abschnitt "Ausdruck " fest:
- Generator: Wählen Sie aus kontextabhängigen Dropdowns aus, und der Editor verfasst den SQL-Ausdruck für Sie. Die verfügbaren Auswahlmöglichkeiten ändern sich basierend auf dem Spaltentyp und den Werten.
- Benutzerdefiniert: Geben Sie den SQL-Ausdruck direkt ein.
Die folgenden Schritte wechseln je nach Komplexität des jeweiligen Ausdrucks zwischen den beiden Optionen. Verwenden Sie Builder für einfache Spaltentransformationen und Aggregationen und wechseln Sie zu Custom für Ausdrücke, die Builder nicht erstellen kann, z. B. CASE-Anweisungen und zusammengesetzte Kennzahlen.
Im Beispiel werden drei Felder definiert: zwei transformierte Spalten aus der Quelle und eine Spalte aus der verknüpften customer Tabelle. Felder, auch als Dimensionen bezeichnet, verhalten sich wie normale Tabellenspalten. Ein Feld kann eine kategorisierte Spalte sein, die zum Gruppieren und Filtern verwendet wird, oder eine nicht aggregierte numerische Spalte, die Sie zur Abfragezeit aggregieren können. Weitere Informationen zum Modellieren von Feldern finden Sie unter "Felder".
Der Editor fügt automatisch alle Quellspalten zum Felder-Tab hinzu. Um dem Beispiel zu entsprechen, entfernen Sie die Spalten, die Sie nicht benötigen, sodass nur source.o_orderdate, source.o_orderstatus und customer.c_mktsegment übrig bleiben.
So entfernen Sie ein Feld:
- Klicken Sie auf die Registerkarte Felder .
- Klicken Sie links neben dem Feldnamen auf das Kontrollkästchen, um die Felder auszuwählen, die Sie entfernen möchten.
- Klicken Sie auf Löschen.
Um einzelne Felder zu löschen, verwenden Sie das rechts neben dem Feldnamen.
Wenn Sie ein Feld bearbeiten, können Sie auch Metadaten hinzufügen:
- Anzeigename: eine beschreibende Bezeichnung.
- Kommentar: eine Beschreibung des Felds.
- Synonyme: Alternative Namen, mit denen KI-Tools das Feld ermitteln können. Siehe Synonyme.
- Format: Benutzerdefinierte Datenformatierung, die steuert, wie Werte angezeigt werden. Das Format ist nur für numerische, Datums- und Datum/Uhrzeit-Spalten verfügbar. Siehe Formatspezifikationen.
- Verwaltete Tags: verwaltete Tags für Klassifizierung und Governance.
Wenn Sie jedes Feld definieren möchten, klicken Sie auf der Registerkarte " Felder " auf den Namen, erstellen Sie dessen Ausdruck, und fügen Sie einen optionalen Kommentar hinzu. Um die Transformation auszuführen und das Ergebnis anzuzeigen, klicken Sie auf ".
Bestellmonat: Klicken Sie auf Builder. Wählen Sie dann
source.o_orderdateaus und wenden Sie eine Monatstransformation an, umDATE_TRUNC('MONTH', source.o_orderdate)zu erzeugen. Fügen Sie den KommentarMonth of orderhinzu.Bestellstatus: Klicken Sie auf "Benutzerdefiniert". Fügen Sie dann den Kommentar hinzu
Status of order, und geben Sie den folgenden Ausdruck ein:CASE WHEN source.o_orderstatus = 'O' THEN 'Open' WHEN source.o_orderstatus = 'P' THEN 'Processing' WHEN source.o_orderstatus = 'F' THEN 'Fulfilled' ENDMarket Segment: Wählen Sie im Generator die
customer.c_mktsegmentSpalte aus der verknüpftencustomerTabelle aus. Fügen Sie den KommentarCustomer market segmenthinzu.
Schritt 5: Maße hinzufügen
Das Beispiel definiert drei Kennzahlen. Kennzahlen sind aggregierte Ausdrücke, die Geschäftsmetriken erzeugen, z. B. Gesamtumsatz oder Auftragsanzahl. Der Editor fügt automatisch ein COUNT(*) Measure hinzu. Sie können es bearbeiten oder entfernen.
Wenn Sie eine Kennzahl bearbeiten, können Sie auch einen Anzeigenamen, einen Kommentar, Synonyme, ein Format und verwaltete Tags hinzufügen – dieselben Metadaten, die auch für Felder verfügbar sind.
Um jede Kennzahl hinzuzufügen, klicken Sie auf der Registerkarte Measures auf +, erstellen Sie den Ausdruck, und fügen Sie einen optionalen Kommentar hinzu. Um die Aggregation auszuführen und das Ergebnis anzuzeigen, klicken Sie auf Vorschau. Wenn Sie ein Measure hinzufügen, werden Genie-Vorschläge oben im Bereich des Measure-Editors angezeigt; klicken Sie auf einen Vorschlag, um dieses Measure zu erstellen.
-
Anzahl der Bestellungen: Wählen Sie im Builder die Aggregation Anzahl aus, um
COUNT(1)zu erzeugen. Fügen Sie den KommentarTotal number of ordershinzu. -
Gesamtumsatz: Wählen Sie in Builder
source.o_totalpriceund die Aggregation Sum aus, umSUM(source.o_totalprice)zu erzeugen. Fügen Sie den KommentarSum of all order priceshinzu. -
Gesamtumsatz pro Kunde: Geben Sie in „Benutzerdefiniert“
SUM(source.o_totalprice) / COUNT(DISTINCT source.o_custkey)ein. Fügen Sie den KommentarAverage revenue per unique customerhinzu.
Wenn Sie ein Fenstermaß für Zeitreihenberechnungen wie gleitende Mittelwerte oder laufende Summen hinzufügen möchten, klicken Sie beim Bearbeiten des Measures auf +Fenster . Siehe Fenstermaße.
Schritt 6: Speichern der Metrikansicht
Klicke auf Speichern. Die abgeschlossene Metrikansicht entspricht der Definition in "Definieren einer Metrikansicht" in SQL oder YAML.
Definieren einer Metrikansicht in SQL oder YAML
Anstatt eine Metrikansicht in der Benutzeroberfläche zu erstellen, können Sie sie direkt in YAML oder in SQL mithilfe der CREATE VIEW Anweisung mit der WITH METRICS Klausel definieren. Im Folgenden sehen Sie die vollständige Definition der Beispielmetrikansicht. Es handelt sich um eine gefilterte Ansicht von samples.tpch.orders, verknüpft mit samples.tpch.customer, mit Feldern für Bestellmonat, Bestellstatus und Kundenmarktsegment sowie Kennzahlen für die Anzahl der Bestellungen, den Gesamtumsatz und den Umsatz pro Kunde.
Note
In diesen Beispielen wird das fields Schlüsselwort verwendet. Wenn Sie eine Metrikansicht im Low-Code-Editor erstellen, verwendet das generierte YAML stattdessen das entsprechende dimensions Schlüsselwort. Siehe Felder.
YAML-Definition
Verwenden Sie die folgende Definition, um die Metrikansicht direkt in YAML zu definieren:
Anzeigen der YAML-Definition
version: 1.1
comment: 'Orders KPIs for sales analysis'
source: samples.tpch.orders
joins:
- name: customer
source: samples.tpch.customer
'on': source.o_custkey = customer.c_custkey
rely:
at_most_one_match: true
filter: source.o_orderdate > '1990-01-01'
fields:
- name: Order Month
expr: DATE_TRUNC('MONTH', source.o_orderdate)
comment: 'Month of order'
- name: Order Status
expr: |-
CASE
WHEN source.o_orderstatus = 'O' THEN 'Open'
WHEN source.o_orderstatus = 'P' THEN 'Processing'
WHEN source.o_orderstatus = 'F' THEN 'Fulfilled'
END
comment: 'Status of order'
- name: Market Segment
expr: customer.c_mktsegment
comment: 'Customer market segment'
measures:
- name: Order Count
expr: COUNT(1)
comment: 'Total number of orders'
- name: Total Revenue
expr: SUM(source.o_totalprice)
comment: 'Sum of all order prices'
- name: Total Revenue per Customer
expr: SUM(source.o_totalprice) / COUNT(DISTINCT source.o_custkey)
comment: 'Average revenue per unique customer'
Vollständige YAML-Syntaxdetails finden Sie in der YaML-Syntaxreferenz zur Metrikansicht.
SQL-Anweisung
Um die Metrikansicht in SQL zu erstellen, schließen Sie die YAML-Definition in einer CREATE VIEW Anweisung mit der WITH METRICS Klausel um, und platzieren Sie das YAML zwischen $$ Trennzeichen:
Anzeigen der SQL-Anweisung
CREATE OR REPLACE VIEW orders_metric_view WITH METRICS LANGUAGE YAML AS
$$
version: 1.1
comment: "Orders KPIs for sales analysis"
source: samples.tpch.orders
joins:
- name: customer
source: samples.tpch.customer
'on': source.o_custkey = customer.c_custkey
rely:
at_most_one_match: true
filter: source.o_orderdate > '1990-01-01'
fields:
- name: Order Month
expr: DATE_TRUNC('MONTH', source.o_orderdate)
comment: "Month of order"
- name: Order Status
expr: |-
CASE
WHEN source.o_orderstatus = 'O' THEN 'Open'
WHEN source.o_orderstatus = 'P' THEN 'Processing'
WHEN source.o_orderstatus = 'F' THEN 'Fulfilled'
END
comment: "Status of order"
- name: Market Segment
expr: customer.c_mktsegment
comment: "Customer market segment"
measures:
- name: Order Count
expr: COUNT(1)
comment: "Total number of orders"
- name: Total Revenue
expr: SUM(source.o_totalprice)
comment: "Sum of all order prices"
- name: Total Revenue per Customer
expr: SUM(source.o_totalprice) / COUNT(DISTINCT source.o_custkey)
comment: "Average revenue per unique customer"
$$
Massenimport von Feldern und Kennzahlen mit Platzhaltern
Gilt für: Databricks Runtime 18.2 und höher mit YAML-Spezifikation 1.1
Statt jedes Feld aufzulisten, können Sie einen Platzhalter in einem expr Feld verwenden, um alle Spalten aus der Quelle oder einer verknüpften Tabelle zu importieren. Dies ist nützlich, wenn die Metrikansicht jede Spalte aus einer vorgelagerten Ressource offenlegen soll. Lassen Sie name bei einem Platzhalter weg, da Azure Databricks jeden Spaltennamen aus der Quelle ableitet. Sie können Wildcards mit explizit definierten Feldern und Measures kombinieren.
Die folgende Definition importiert alle Felder aus der Quelle außer einer, fügt ein Feld aus der verknüpften customer Tabelle hinzu und definiert ein explizites Measure:
version: 1.1
source: samples.tpch.orders
joins:
- name: customer
source: samples.tpch.customer
'on': source.o_custkey = customer.c_custkey
fields:
- expr: source.* EXCEPT (o_comment)
- name: Market Segment
expr: customer.c_mktsegment
measures:
- name: Order Count
expr: COUNT(1)
Die vollständige Wildcardsyntax, einschließlich des Importierens aller Spalten aus einer verknüpften Tabelle (customer.*), der Strukturerweiterung und der Auflösung von Namenskonflikten, finden Sie unter "Massenimportfelder und Measures" mit Wildcards.
Verwenden von Genie Code
Genie Code ist ein KI-Assistent, den Sie über das Schaltfläche in der oberen rechten Ecke des Editors. Beschreiben Sie, was Sie in natürlicher Sprache wünschen, und Genie Code aktualisiert die Metrikansichtsdefinition für Sie. Genie Code ist kontextbewusst: Auf der Registerkarte "Ui " aktualisiert er den Editor für Sie, und im YAML-Editor fügt er YAML ein.
Wenn Sie einer vorhandenen Metrikansicht ein einzelnes Measure hinzufügen möchten, beschreiben Sie folgendes:
Tipp
Weisen Sie Genie Code (Agent-Modus) an, dies für Sie zu tun.
add an average sales per customer measure
Um eine vollständige Metrikansicht aus einer Beschreibung der natürlichen Sprache zu erstellen, beschreiben Sie sie in Genie Code. Das Ergebnis ist eine Definition, die dem Beispiel auf dieser Seite ähnelt; Die genauen Feldnamen und Kommentare können variieren.
Tipp
Weisen Sie Genie Code (Agent-Modus) an, dies für Sie zu tun.
Create a metric view on samples.tpch.orders joined to samples.tpch.customer on o_custkey = c_custkey. Add a field for order month by truncating the order date to the month, a field for order status that maps 'O' to Open, 'P' to Processing, and 'F' to Fulfilled, and a field for the customer market segment. Add measures for the total number of orders, the total revenue as the sum of order price, and the total revenue per unique customer. Filter to orders placed after January 1, 1990.
Weitere Ressourcen
Verwenden Sie nach dem Erstellen einer Metrikansicht die folgenden Ressourcen, um Ihre Arbeit abzufragen, zu modellieren und zu verwalten.
- Abfragemetrikansichten: Abfragemetrikansichten aus SQL-Editoren, Notizbüchern, Dashboards und Warnungen.
- Modellmetrikansichten: Modellquellen, Felder, Measures, Filter und Verknüpfungen.
- Verwalten von Metrikansichten: Steuern des Zugriffs, Aktivieren der gemeinsamen Bearbeitung und Verwalten des Lebenszyklus der Metrikansicht.
- Referenz zur YAML-Syntax der Metrikansicht: Hier finden Sie die vollständige YAML-Spezifikation der Metrikansicht.