Delen via


Gegevens van modelmetrische weergave

Op deze pagina wordt beschreven hoe u metrische weergaven en aanbevolen procedures kunt modelleren voor het werken met deze weergaven.

Metrische weergaven helpen bij het maken van een semantische laag voor uw gegevens, het transformeren van onbewerkte tabellen in gestandaardiseerde, bedrijfsvriendelijke metrische gegevens. Ze definiëren wat er moet worden gemeten, hoe ze moeten worden samengevoegd en hoe ze deze segmenteren, zodat elke gebruiker in de hele organisatie hetzelfde nummer rapporteert voor dezelfde Key Performance Indicator (KPI). Het doel is om één bron van waarheid te maken voor zakelijke metrische gegevens.

Door uw gegevens als metrische weergaven te modelleren, abstraheert u complexe SQL-, tabelstructuren en problemen met gegevenskwaliteit, zodat analisten zich alleen op analyse kunnen richten.

Kernonderdelen

Het modelleren van een metrische weergave omvat het definiëren van de volgende elementen voor uw brongegevens:

Onderdeel Description Example
bron De basistabel, weergave of SQL-query met de onbewerkte transactionele gegevens. samples.tpch.orders
dimensies De kolomkenmerken die worden gebruikt om de metrische gegevens te segmenteren of te groeperen Productcategorie, Ordermaand, Klantregio
Maatregelen De kolomaggregaties die de metrische gegevens produceren. Deze metingen zijn wat u meestal rapporteert. COUNT(o_order_id) als aantal orders, SUM(o_total_price) als totale omzet.
Filters Permanente voorwaarden die worden toegepast op de brongegevens om het bereik te definiëren.
  • status = 'completed'
  • order_date > '2024-01-01'

Een bron definiëren

U kunt een tabelachtige asset of een SQL-query gebruiken als de bron voor uw metrische weergave. Als u een tabelachtige asset wilt gebruiken, moet u ten minste SELECT bevoegdheden voor de asset hebben.

Een tabel als bron gebruiken

Als u een tabel als bron wilt gebruiken, neemt u de volledig gekwalificeerde tabelnaam op, zoals in het volgende voorbeeld.

source: samples.tpch.orders

Een SQL-query als bron gebruiken

Als u een SQL-query wilt gebruiken, schrijft u de querytekst rechtstreeks in de YAML.

source: SELECT * FROM samples.tpch.orders o
  LEFT JOIN samples.tpch.customer c
  ON o.o_custkey = c.c_custkey

Opmerking

Wanneer u een SQL-query als bron met een JOIN component gebruikt, raadt Databricks u aan om beperkingen voor primaire en refererende sleutels in te stellen voor onderliggende tabellen en de RELY optie te gebruiken voor optimale prestaties tijdens het uitvoeren van query's, indien van toepassing. Zie Relaties tussen primaire en refererende sleutels declareren enqueryoptimalisatie met behulp van primaire-sleutelbeperkingen voor meer informatie over het gebruik van beperkingen voor primaire en refererende sleutels.

Metrische weergave gebruiken als bron

U kunt ook een bestaande metrische weergave gebruiken als bron voor een nieuwe metrische weergave:

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))

Wanneer u een metrische weergave als bron gebruikt, zijn dezelfde composabiliteitsregels van toepassing op het verwijzen naar dimensies en metingen. Zie Composability.

Afmetingen

Dimensies zijn kolommen die worden gebruikt in SELECT, WHEREen GROUP BY componenten tijdens het uitvoeren van query's. Elke expressie moet een scalaire waarde retourneren. Dimensies worden gedefinieerd als een matrix. Elke dimensie bestaat uit twee onderdelen:

  • name: De alias van de kolom.

  • expr: Een SQL-expressie op de brongegevens die de dimensie of een eerder gedefinieerde dimensie definieert in de metrische weergave.

Opmerking

Vanaf versie 1.1 kunt u ook semantische metagegevens (weergavenaam, opmaak en synoniemen) definiëren voor elke dimensie. Zie Semantische metagegevens gebruiken in metrische weergaven voor meer informatie.

Maatregelen

Metingen zijn kolommen die zijn gedefinieerd als een matrix van expressies die resultaten produceren zonder vooraf bepaald aggregatieniveau. Ze moeten worden uitgedrukt met behulp van statistische functies. Als u wilt verwijzen naar een meting in een query, moet u de MEASURE functie gebruiken. Metingen kunnen verwijzen naar basisvelden in de brongegevens of eerder gedefinieerde dimensies. Elke meting bestaat uit de volgende onderdelen:

  • name: De alias van de meting.

  • expr: Een aggregaat SQL-expressie die SQL-aggregaatfuncties kan bevatten.

In het volgende voorbeeld ziet u veelvoorkomende metingspatronen:

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))

Zie Statistische functies voor een lijst met statistische functies.

Zie measure aggregatiefunctie.

Opmerking

Vanaf versie 1.1 kunt u ook semantische metagegevens (weergavenaam, opmaak en synoniemen) definiëren voor elke meting. Zie Semantische metagegevens gebruiken in metrische weergaven voor meer informatie.

Filters toepassen

Een filter in de YAML-definitie van een metrische weergave is van toepassing op alle query's waarnaar wordt verwezen. Deze moet worden geschreven als een SQL-boole-expressie en is gelijk aan het gebruik van een WHERE component in een SQL-query.

In het volgende voorbeeld ziet u algemene filterpatronen:

# 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'

U kunt ook filters toevoegen wanneer u metrische weergaven opvraagt of gebruikt.

Geavanceerde modelleringsmogelijkheden

Modellering voor metrische weergave ondersteunt geavanceerde technieken om geavanceerde en zeer herbruikbare metrische gegevens te maken.

[Samenvoegingen]

Met joins kunt u uw metrische weergave verrijken met beschrijvende kenmerken uit gerelateerde tabellen. nl-NL: U kunt joins gebruiken om relaties van de feitentabel te modelleren naar dimensietabellen (ster-schema) en om van dimensies naar subdimensies te gaan, zodat multihop-joins over genormaliseerde dimensietabellen (sneeuwvlok-schema) mogelijk zijn.

Zie Joins gebruiken in metrische weergaven.

Venstermetingen

Belangrijk

Deze functie is experimenteel.

Met venstermetingen kunt u metingen definiëren met gevensterde, cumulatieve of semi-aangrenzende aggregaties in uw metrische weergaven. Deze typen metingen bieden complexere berekeningen, zoals zwevende gemiddelden, wijzigingen in perioden en lopende totalen. Zie Venstermetingen gebruiken in metrische weergaven voor voorbeelden die laten zien hoe u venstermetingen kunt gebruiken in metrische weergaven.

Modulariteit

Metrische weergaven kunnen worden gecombineerd, zodat u complexe logica kunt bouwen door te verwijzen naar eerder gedefinieerde elementen. U kunt verwijzen naar eerder gedefinieerde dimensies bij het maken van nieuwe dimensies, naar elke dimensie of eerder gedefinieerde metingen bij het opstellen van nieuwe metingen, en naar kolommen uit samengestelde gegevens in de metrische weergave.

Zie Samenstelbaarheid in metrische weergaven.

Semantische metagegevens

Semantische metadata helpt hulpmiddelen begrijpen hoe metingen en dimensies weergegeven en behandeld moeten worden. Dit omvat eigenschappen zoals:

Semantische metagegevens Example
Weergavenamen Total Revenue in plaats van sum_o_price.
Weergaveformaat Standaardeer opmaak voor valuta, percentages en datums.
Comments Leg de bedrijfsdefinitie van de metrische gegevens uit in natuurlijke taal.

Wanneer u semantische metagegevens definieert, wordt deze verzonden met de metrische gegevens. Wanneer analisten bijvoorbeeld Total Revenue in een dashboard gebruiken, wordt deze automatisch weergegeven als valuta.

Zie Semantische metagegevens gebruiken in metrische weergaven.

YAML-syntaxis en -opmaak

Definities van metrische weergave volgen de standaard syntaxis van YAML-notatie. Zie de naslaginformatie over YAML-syntaxis voor meer informatie over de vereiste syntaxis en opmaak om een metrische weergave te definiëren. Zie de documentatie voor YAML-specificatie 1.2.2 voor meer informatie over YAML-specificaties.

Venstermetingen

Venstermetingen berekenen een waarde over een gedefinieerd venster of een bereik van rijen die zijn gerelateerd aan de huidige rij. U kunt venstermetingen gebruiken voor tijdreeksen en vergelijkende analyses, zodat u metrische gegevens kunt definiëren, zoals:

  • Doorlopende totale omzet van 30 dagen: Som van omzet in de afgelopen 30 dagen
  • Jaar-tot-heden -omzet (YTD): cumulatief totaal vanaf het begin van het jaar
  • Vergelijking van vorige periode: Opbrengst van de vorige maand

Zie Venstermetingen gebruiken in metrische weergaven.

Aanbevolen procedures voor het modelleren van metrische weergaven

Gebruik de volgende richtlijnen bij het modelleren van metrische weergaven:

  • Atomische metingen model: begin met het definiëren van de eenvoudigste, niet-berekende metingen eerst (bijvoorbeeld SUM(revenue), COUNT(DISTINCT customer_id)). Bouw complexe metingen (zoals AOV) met behulp van samenstelbaarheid.
  • Dimensiewaarden standaardiseren: Gebruik transformaties (zoals CASE instructies of expressies) om cryptische databasecodes om te zetten naar duidelijke bedrijfsnamen (bijvoorbeeld de orderstatus 'O' omzetten naar 'Open' en 'F' naar 'Afgeleverd').
  • Bereik definiëren met filters: Wees doelgericht met permanente filters. Als een metrische weergave alleen voltooide orders mag bevatten, definieert u dat filter in de metrische weergave, zodat gebruikers niet per ongeluk onvolledige gegevens kunnen opnemen.
  • Gebruik bedrijfsvriendelijke naamgeving: metrische namen moeten onmiddellijk herkenbaar zijn voor zakelijke gebruikers (bijvoorbeeld klantlevenswaarde versus cltv_agg_measure).
  • Afzonderlijke tijddimensies: neem altijd gedetailleerde tijddimensies (zoals Orderdatum) en afgekapte tijddimensies (zoals Ordermaand of Orderweek) op om zowel detail- als trendanalyse te ondersteunen.