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.
Auf dieser Seite wird beschrieben, wie Sie Metrikansichten modellieren und bewährte Methoden für die Arbeit mit ihnen verwenden.
Metrikansichten helfen beim Erstellen einer semantischen Ebene für Ihre Daten, das Transformieren von Rohtabellen in standardisierte, unternehmensfreundliche Metriken. Sie definieren, was gemessen werden soll, wie sie aggregiert werden soll und wie sie segmentieren, um sicherzustellen, dass jeder Benutzer in der gesamten Organisation dieselbe Zahl für denselben KPI (Key Performance Indicator) meldet. Ziel ist es, eine einzige Quelle der Wahrheit für Geschäftsmetriken zu schaffen.
Indem Sie Ihre Daten als Metrikansichten modellieren, abstrahieren Sie komplexe SQL-, Tabellenstrukturen und Datenqualitätsprobleme, sodass Analysten sich ausschließlich auf die Analyse konzentrieren können.
Kernkomponenten
Das Modellieren einer Metrikansicht umfasst das Definieren der folgenden Elemente in Bezug auf die Quelldaten:
| Komponente | Description | Example |
|---|---|---|
| Quelle | Die Basistabelle, Ansicht oder SQL-Abfrage, die die unformatierten Transaktionsdaten enthält. | samples.tpch.orders |
| Maße | Die Spaltenattribute, die zum Segmentieren oder Gruppieren der Metriken verwendet werden | Produktkategorie, Bestellmonat, Kundenregion |
| Maßnahmen | Die Spaltenaggregationen, die die Metriken erzeugen. Diese Maßnahmen sind das, worüber Sie normalerweise berichten. |
COUNT(o_order_id) als Bestellanzahl, SUM(o_total_price) als Gesamtumsatz. |
| Filter | Dauerhafte Bedingungen, die auf die Quelldaten angewendet werden, um den Bereich zu definieren. |
|
Definieren einer Quelle
Sie können ein tabellenähnliches Objekt oder eine SQL-Abfrage als Quelle für Ihre Metrikansicht verwenden. Um ein tabellenähnliches Objekt zu verwenden, müssen Sie mindestens SELECT über Berechtigungen für das Objekt verfügen.
Verwenden einer Tabelle als Quelle
Wenn Sie eine Tabelle als Quelle verwenden möchten, schließen Sie den vollqualifizierten Tabellennamen wie im folgenden Beispiel ein.
source: samples.tpch.orders
Verwenden einer SQL-Abfrage als Quelle
Um eine SQL-Abfrage zu verwenden, schreiben Sie den Abfragetext direkt in das YAML.
source: SELECT * FROM samples.tpch.orders o
LEFT JOIN samples.tpch.customer c
ON o.o_custkey = c.c_custkey
Hinweis
Wenn Sie eine SQL-Abfrage als Quelle mit einer JOIN Klausel verwenden, empfiehlt Databricks, primäre und Fremdschlüsseleinschränkungen für zugrunde liegende Tabellen festzulegen und ggf. die RELY Option für eine optimale Leistung zur Abfragezeit zu verwenden. Weitere Informationen zur Verwendung von Primär- und Fremdschlüsseleinschränkungen finden Sie unter Deklarieren von Primärschlüssel- und Fremdschlüsselbeziehungen und Abfrageoptimierung mithilfe von Primärschlüsseleinschränkungen.
Verwenden der Metrikansicht als Quelle
Sie können auch eine vorhandene Metrikansicht als Quelle für eine neue Metrikansicht verwenden:
version: 1.1
source: views.examples.source_metric_view
dimensions:
# Dimension referencing dimension from source_metric_view
- name: Order date
expr: order_date_dim
measures:
# Measure referencing dimension from source_metric_view
- name: Latest order month
expr: MAX(order_date_dim_month)
# Measure referencing measure from source_metric_view
- name: Latest order year
expr: DATE_TRUNC('year', MEASURE(max_order_date_measure))
Wenn Sie eine Metrikansicht als Quelle verwenden, gelten die gleichen Regeln für die Bezugnahme auf Dimensionen und Messwerte. Siehe Kompositierbarkeit.
Maße
Dimensionen sind Spalten, die zur Abfragezeit in SELECT, WHEREund GROUP BY Klauseln verwendet werden. Jeder Ausdruck muss einen skalaren Wert zurückgeben. Dimensionen werden als Array definiert. Jede Dimension besteht aus zwei Komponenten:
name: Der Alias der Spalte.expr: Ein SQL-Ausdruck für die Quelldaten, der die Dimension oder eine zuvor definierte Dimension in der Metrikansicht definiert.
Hinweis
Ab Version 1.1 können Sie auch semantische Metadaten (Anzeigename, Format und Synonyme) für jede Dimension definieren. Ausführliche Informationen finden Sie unter Verwenden von semantischen Metadaten in Metrikansichten .
Maßnahmen
Measures sind Spalten, die als Array von Ausdrücken definiert sind und Ergebnisse ohne vorher definiertes Aggregationsniveau erzeugen. Sie müssen mithilfe von Aggregatfunktionen ausgedrückt werden. Um auf ein Measure in einer Abfrage zu verweisen, müssen Sie die MEASURE Funktion verwenden. Measures können auf Basisfelder in den Quelldaten oder früher definierten Dimensionen verweisen. Jede Maßnahme besteht aus den folgenden Komponenten:
name: Der Alias der Measure.expr: Ein Aggregat-SQL-Ausdruck, der SQL-Aggregatfunktionen enthalten kann.
Im folgenden Beispiel werden allgemeine Maßmuster veranschaulicht.
measures:
# Simple count measure
- name: Order Count
expr: COUNT(1)
# Sum aggregation measure
- name: Total Revenue
expr: SUM(o_totalprice)
# Distinct count measure
- name: Unique Customers
expr: COUNT(DISTINCT o_custkey)
# Calculated measure combining multiple aggregations
- name: Average Order Value
expr: SUM(o_totalprice) / COUNT(DISTINCT o_orderkey)
# Filtered measure with WHERE condition
- name: High Priority Order Revenue
expr: SUM(o_totalprice) FILTER (WHERE o_orderpriority = '1-URGENT')
# Measure using a dimension
- name: Average Revenue per Month
expr: SUM(o_totalprice) / COUNT(DISTINCT DATE_TRUNC('MONTH', o_orderdate))
Eine Liste der Aggregatfunktionen finden Sie unter " Aggregatfunktionen ".
Siehe measure Aggregatfunktion.
Hinweis
Ab Version 1.1 können Sie auch semantische Metadaten (Anzeigename, Format und Synonyme) für jedes Measure definieren. Ausführliche Informationen finden Sie unter Verwenden von semantischen Metadaten in Metrikansichten .
Anwenden von Filtern
Ein Filter in der YAML-Definition einer Metrikansicht gilt für alle Abfragen, die darauf verweisen. Sie muss als boolescher SQL-Ausdruck geschrieben werden und entspricht der Verwendung einer WHERE Klausel in einer SQL-Abfrage.
Im folgenden Beispiel werden allgemeine Filtermuster veranschaulicht:
# Single condition filter
filter: o_orderdate > '2024-01-01'
# Multiple conditions with AND
filter: o_orderdate > '2024-01-01' AND o_orderstatus = 'F'
# Multiple conditions with OR
filter: o_orderpriority = '1-URGENT' OR o_orderpriority = '2-HIGH'
# Complex filter with IN clause
filter: o_orderstatus IN ('F', 'P') AND o_orderdate >= '2024-01-01'
# Filter with NOT
filter: o_orderstatus != 'O' AND o_totalprice > 1000.00
# Filter with LIKE pattern matching
filter: o_comment LIKE '%express%' AND o_orderdate > '2024-01-01'
Sie können auch Filter hinzufügen, wenn Sie Metrikansichten abfragen oder verwenden.
Erweiterte Modellierungsfunktionen
Die Modellierung der Metrikansicht unterstützt erweiterte Techniken zum Erstellen anspruchsvoller und hochgradig wiederverwendbarer Metriken.
Verknüpfungen
Verknüpfungen ermöglichen es Ihnen, Ihre Metrikansicht mit beschreibenden Attributen aus verknüpften Tabellen zu erweitern. Sie können Verknüpfungen zum Modellieren von Beziehungen aus der Faktentabelle zu Dimensionstabellen (Sternschema) und zum Durchlaufen von Dimensionen zu Unterdimensionen verwenden, sodass Multi-Hop-Verknüpfungen in normalisierten Dimensionstabellen (Schneeflakeschema) möglich sind.
Siehe Verwenden von Verknüpfungen in Metrikansichten.
Fenstermaße
Von Bedeutung
Dieses Feature ist experimentell.
Mit Windows-Measures können Sie in Ihren Metrik-Ansichten Kennzahlen mit windowed, kumulativen oder semiadditiven Aggregationen definieren. Diese Arten von Maßnahmen ermöglichen komplexere Berechnungen, wie gleitende Durchschnittswerte, Veränderungen von Zeitraum zu Zeitraum und laufende Summen. Siehe Verwendung von Fenstermaßen in metrischen Ansichten für Beispiele, die zeigen, wie Fenstermaße in Metrikansichten verwendet werden.
Kombinierbarkeit
Metrikansichten können erstellt werden, sodass Sie komplexe Logik erstellen können, indem Sie auf zuvor definierte Elemente verweisen. Sie können in neuen Dimensionen auf zuvor definierte Dimensionen verweisen, auf alle Dimensionen oder auf zuvor definierte Messwerte in den neuen Messwerten verweisen und Spalten aus den in der Metrikansicht definierten Verknüpfungen referenzieren.
Siehe "Komponierbarkeit" in metrischen Ansichten.
Semantische Metadaten
Semantische Metadaten helfen Tools, zu verstehen, wie Maße und Dimensionen angezeigt und behandelt werden. Dies umfasst Eigenschaften wie:
| Semantische Metadaten | Example |
|---|---|
| Anzeigenamen |
Total Revenue anstelle von sum_o_price. |
| Anzeigeformat | Standardisieren sie die Formatierung für Währung, Prozentsätze und Datumsangaben. |
| Kommentare | Erläutern der Geschäftsdefinition der Metrik in natürlicher Sprache. |
Wenn Sie semantische Metadaten definieren, wird sie mit der Metrik bewegt. Wenn Analysten beispielsweise den Gesamtumsatz in einem Dashboard verwenden, wird sie automatisch als Währung angezeigt.
Siehe Verwenden semantischer Metadaten in Metrikansichten.
YAML-Syntax und -Formatierung
Metrische Ansichtsdefinitionen folgen der standardmäßigen YAML-Notationssyntax. Informationen zur erforderlichen Syntax und Formatierung zum Definieren einer Metrikansicht finden Sie in der YAML-Syntaxreferenz . Weitere Informationen zu YAML-Spezifikationen finden Sie in der YAML-Spezifikationsdokumentation 1.2.2 .
Fenstermaße
Fenstermaße berechnen einen Wert über ein definiertes Fenster oder einen Zeilenbereich, der mit der aktuellen Zeile verknüpft ist. Sie können Fenstermessungen für Zeitreihen- und Vergleichsanalysen verwenden, sodass Sie Metriken wie definieren können:
- Rollierender 30-Tage-Gesamtumsatz: Summe des Umsatzes über die letzten 30 Tage
- Jahres-bis-Datum (YTD)-Umsatz: Kumulierte Summe vom Anfang des Jahres
- Vergleich des vorherigen Zeitraums: Umsatz aus dem vorigen Monat
Siehe Verwenden von Fenstermaßen in Metrikansichten.
Bewährte Methoden für die Modellierung von Metrikansichten
Verwenden Sie beim Modellieren von Metrikansichten die folgenden Richtlinien:
-
Modell atomare Maße: Beginnen Sie zuerst mit der Definition der einfachsten, nicht berechneten Maße (z. B.,
SUM(revenue),COUNT(DISTINCT customer_id)). Erstellen Sie komplexe Maßnahmen (z. B. AOV) mithilfe der Kompositionsfähigkeit. -
Dimensionswerte standardisieren: Verwenden Sie Transformationen (z.
CASEB. Anweisungen oder Ausdrücke), um verschlüsselte Datenbankcodes in klare Geschäftsnamen zu konvertieren (z. B. "O" in "Offen" und "F" in "Erfüllt"). - Definieren sie den Bereich mit Filtern: Achten Sie auf persistente Filter. Wenn eine Metrikansicht nur abgeschlossene Bestellungen enthalten soll, definieren Sie diesen Filter in der Metrikansicht, damit Benutzer nicht versehentlich unvollständige Daten einfügen können.
-
Verwenden Sie die unternehmensfreundliche Benennung: Metrische Namen sollten für Geschäftsbenutzer sofort erkennbar sein (z. B. Customer Lifetime Value vs.
cltv_agg_measure). - Separate Zeitdimensionen: Schließen Sie immer präzise Zeitabmessungen (z. B. Bestelldatum) und abgeschnittene Zeitabmessungen (z. B. Bestellmonat oder Bestellwoche) ein, um sowohl Detailebene als auch Trendanalyse zu unterstützen.