Sdílet prostřednictvím


Data zobrazení metrik modelu

Tato stránka popisuje, jak modelovat zobrazení metrik a osvědčené postupy pro práci s nimi.

Zobrazení metrik pomáhají vytvořit sémantickou vrstvu pro vaše data a transformovat nezpracované tabulky na standardizované a obchodní metriky. Definují, co se má měřit, jak ho agregovat a jak ho segmentovat, aby každý uživatel v organizaci hlásí stejné číslo pro stejný klíčový ukazatel výkonu (KPI). Cílem je vytvořit jeden zdroj pravdivých informací pro obchodní metriky.

Modelováním dat jako zobrazení metrik abstrahujete složité problémy s SQL, strukturami tabulek a kvalitou dat, což analytikům umožní soustředit se čistě na analýzu.

Základní komponenty

Modelování zobrazení metrik zahrnuje definování následujících prvků nad zdrojovými daty:

Součást Description Example
Zdroj Základní tabulka, zobrazení nebo dotaz SQL obsahující nezpracovaná transakční data. samples.tpch.orders
Dimenze Atributy sloupce použité k segmentování nebo seskupení metrik Kategorie produktu, měsíc objednávky, oblast zákazníka
Opatření Agregace sloupců, které vytvářejí metriky. Tato opatření jsou to, o čem obvykle informujete. COUNT(o_order_id) jako počet objednávek, SUM(o_total_price) jako celkový příjem.
Filtry Trvalé podmínky aplikované na zdrojová data pro vymezení rozsahu.
  • status = 'completed'
  • order_date > '2024-01-01'

Definování zdroje

Jako zdroj zobrazení metrik můžete použít prostředek podobný tabulce nebo dotaz SQL. Pokud chcete použít prostředek podobný tabulce, musíte mít alespoň SELECT oprávnění k prostředku.

Použití tabulky jako zdroje

Pokud chcete jako zdroj použít tabulku, zadejte plně kvalifikovaný název tabulky, jak je znázorněno v následujícím příkladu.

source: samples.tpch.orders

Použití dotazu SQL jako zdroje

Pokud chcete použít dotaz SQL, napište text dotazu přímo do YAML.

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

Poznámka:

Při použití dotazu SQL jako zdroje s JOIN klauzulí doporučuje Databricks nastavit omezení primárního a cizího klíče u podkladových tabulek a v případě potřeby použít RELY možnost optimálního výkonu v době dotazu. Další informace o použití omezení primárního a cizího klíče naleznete v tématu Deklarování relací primárního a cizího klíče a optimalizace dotazů pomocí omezení primárního klíče.

Použití zobrazení metrik jako zdroje

Jako zdroj nového zobrazení metriky můžete použít také existující zobrazení metrik:

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

Při použití zobrazení metriky jako zdroje platí stejná pravidla kompozability pro odkazování na dimenze a míry. Viz Možnosti kompilace.

Dimenze

Dimenze jsou sloupce používané v SELECT, WHERE a GROUP BY klauzulích při dotazu. Každý výraz musí vrátit skalární hodnotu. Dimenze jsou definovány jako pole. Každá dimenze se skládá ze dvou součástí:

  • name: Alias sloupce.

  • expr: Výraz SQL na zdrojových datech, který definuje dimenzi nebo dříve definovanou dimenzi v zobrazení metriky.

Poznámka:

Od verze 1.1 můžete také definovat sémantická metadata (zobrazovaný název, formát a synonyma) pro každou dimenzi. Podrobnosti najdete v tématu Použití sémantických metadat v zobrazení metrik .

Opatření

Míry jsou sloupce definované jako pole výrazů, které vytvářejí výsledky bez předem určené úrovně agregace. Musí být vyjádřeny pomocí agregačních funkcí. Pokud chcete odkazovat na míru v dotazu, musíte použít MEASURE funkci. Míry můžou odkazovat na základní pole ve zdrojových datech nebo dříve definovaných dimenzích. Každá míra se skládá z následujících součástí:

  • name: Alias metrické míry.

  • expr: Agregovaný výraz SQL, který může obsahovat agregační funkce SQL.

Následující příklad ukazuje běžné vzory měr:

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

Seznam agregačních funkcí najdete v části Agregační funkce .

Viz measure agregační funkce.

Poznámka:

Od verze 1.1 můžete také definovat sémantická metadata (zobrazovaný název, formát a synonyma) pro každou míru. Podrobnosti najdete v tématu Použití sémantických metadat v zobrazení metrik .

Použití filtrů

Filtr v definici YAML zobrazení metrik se vztahuje na všechny dotazy, které na něj odkazují. Musí být zapsán jako logický výraz SQL a je ekvivalentní použití WHERE klauzule v dotazu SQL.

Následující příklad ukazuje běžné vzory filtru:

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

Filtry můžete přidat také při dotazování nebo využívání zobrazení metrik.

Pokročilé možnosti modelování

Modelování zobrazení metrik podporuje pokročilé techniky pro vytváření sofistikovaných a opakovaně použitelných metrik.

Joins

Spojení umožňují rozšířit zobrazení metriky popisnými atributy ze souvisejících tabulek. Pomocí spojení můžete modelovat relace z tabulky faktů do tabulek dimenzí (hvězdicové schéma) a postupovat z dimenzí do subdimenzí, což umožňuje vícestupňová spojení napříč normalizovanými tabulkami dimenzí (schéma vločka).

Vizte Použití spojení v zobrazení metrik.

Rozměry oken

Důležité

Tato funkce je experimentální.

Okenní míry umožňují definovat míry s okenními, kumulativními nebo poloaditivními agregacemi v zobrazeních metrik. Tyto typy měr umožňují složitější výpočty, jako jsou klouzavé průměry, změny období v průběhu období a průběžné součty. Viz Použití okenních měr v zobrazeních metrik pro příklady, které ukazují, jak používat okenní míry v zobrazeních metrik.

Možnosti sestavování

Zobrazení metrik jsou kompozibilní a umožňují vytvářet složitou logiku odkazováním na dříve definované prvky. Na dříve definované dimenze můžete odkazovat v nových dimenzích, odkazovat na libovolné dimenze nebo dříve definované míry v nových mírách a odkazovat na sloupce ze spojení definovaných v zobrazení metriky.

Viz Možnosti kompilace v zobrazeních metrik.

Sémantická metadata

Sémantická metadata pomáhají s využitím nástrojů pochopit, jak zobrazovat a zpracovávat míry a dimenze. To zahrnuje vlastnosti, jako jsou:

Sémantická metadata Example
Zobrazované názvy Total Revenue místo sum_o_price.
Formát zobrazení Standardizujte formátování pro měnu, procenta a kalendářní data.
Comments Vysvětlete definici obchodních metrik v přirozeném jazyce.

Když definujete sémantická metadata, jsou spojena s metrikou. Když například analytici na řídicím panelu používají celkové výnosy , automaticky se zobrazí jako měna.

Viz Použití sémantických metadat v zobrazeních metrik.

Syntaxe a formátování YAML

Definice zobrazení metrik se řídí standardní syntaxí notace YAML. Informace o požadované syntaxi a formátování pro definování zobrazení metrik najdete v referenčních informacích k syntaxi YAML . Další informace o specifikacích YAML najdete v dokumentaci ke specifikaci YAML 1.2.2 .

Rozměry oken

Míry okna počítají hodnotu nad definovaným oknem nebo rozsahem řádků souvisejících s aktuálním řádkem. Míry oken můžete použít pro časovou řadu a srovnávací analýzu, což vám umožní definovat metriky, jako jsou:

  • Průběžné 30denní celkové výnosy: Součet výnosů za posledních 30 dnů
  • Výnosy od začátku roku (YTD): Kumulativní součet od začátku roku
  • Porovnání předchozího období: Výnosy z předchozího měsíce

Viz Použití měření oken v metrických zobrazeních.

Osvědčené postupy pro modelování zobrazení metrik

Při modelování zobrazení metrik použijte následující pokyny:

  • Model atomických měr: Začněte definováním nejjednodušších nepočítaných měr (například SUM(revenue), ). COUNT(DISTINCT customer_id) Vytvořte složitá měřítka (například AOV) pomocí kompozice.
  • Standardizace hodnot dimenzí: Pomocí transformací (například CASE příkazů nebo výrazů) můžete převést kódy kryptografických databází na jasné obchodní názvy (například převést stav objednávky "O" na "Otevřít" a "F" na "Splněno").
  • Definujte rozsah s filtry: Používejte trvalé filtry záměrně. Pokud by zobrazení metriky mělo obsahovat jenom dokončené objednávky, definujte tento filtr v zobrazení metriky, aby uživatelé nemohli omylem zahrnout neúplná data.
  • Použití obchodního pojmenování: Názvy metrik by měly být okamžitě rozpoznatelné firemním uživatelům (například hodnota životnosti zákazníka vs. cltv_agg_measure).
  • Samostatné časové dimenze: Vždy zahrnují podrobné časové dimenze (například Datum objednávky) a zkrácené časové dimenze (například Měsíc objednávky nebo Týden objednávky), které podporují podrobnou i trendovou analýzu.