Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Na tej stronie wyjaśniono, jak komponowanie działa w widokach metryk i zawiera przykłady pokazujące sposób tworzenia logiki przez tworzenie wymiarów, miar i sprzężeń w jednym widoku.
Przegląd
Widoki metryk są komponowalne, co oznacza, że można zdefiniować logikę warstwową wielokrotnego użytku. Zamiast pisać każdą definicję od podstaw, można tworzyć nowe, które opierają się na istniejących wymiarach i miarach.
Dzięki możliwości komponowania można wykonywać następujące czynności:
- Odwołuj się do wcześniej zdefiniowanych wymiarów przy definiowaniu nowych wymiarów.
- Odwołuj się do dowolnych wymiarów lub wcześniej zdefiniowanych miar w nowych miarach
- Odwołania do kolumn pochodzących ze sprzężeń zdefiniowanych w widoku metryk
Komponowanie pomaga uniknąć duplikacji, usprawnić definicje metryk i obsługiwać bardziej złożoną analizę bez konieczności każdorazowego używania nieprzetworzonego kodu SQL.
Komponowalność metryk
Komposability to zasada tworzenia złożonych metryk przez ponowne używanie prostszych, podstawowych miar. Zamiast pisać i utrzymywać złożoną, zagnieżdżoną logikę SQL dla każdego pochodnego wskaźnika KPI, należy zdefiniować podstawowe "atomowe" miary raz, a następnie odwoływać się do nich w innych, bardziej zaawansowanych obliczeniach. Takie podejście znacznie poprawia spójność, możliwość audytu i konserwację warstwy semantycznej.
Podstawą komposowalności jest MEASURE() funkcja, która umożliwia definicji miary odwoływanie się do każdej innej miary zdefiniowanej w tym samym widoku metryki.
Definiowanie miar z komponowalnością
Implementacja komponowalności jest w sekcji measures widoku metryki YAML.
| Typ miary | Description | Example |
|---|---|---|
| Atomowy | Prosta, bezpośrednia agregacja w kolumnie źródłowej. Tworzą one bloki konstrukcyjne. | SUM(o_totalprice) |
| Składający się | Wyrażenie, które matematycznie łączy jedną lub więcej innych miar przy użyciu MEASURE() funkcji . |
MEASURE(Total Revenue) / MEASURE(Order Count) |
Przykład: Średnia wartość zamówienia (AOV)
Aby obliczyć średnią wartość zamówienia (AOV), potrzebne są dwie miary: Total Revenue i Order Count.
source: samples.tpch.orders
measures:
# Total Revenue
- name: total_revenue
expr: SUM(o_totalprice)
comment: The gross total value of all orders.
display_name: 'Total Revenue'
# Order Count
- name: order_count
expr: COUNT(1)
comment: The total number of line items or orders.
display_name: 'Order Count'
# Composed Measure: Average Order Value (AOV)
- name: avg_order_value
# Defines AOV as Total Revenue divided by Order Count
expr: MEASURE(total_revenue) / MEASURE(order_count)
comment: Total revenue divided by the number of orders.
display_name: 'Avg Order Value'
W tym przykładzie, jeśli definicja total_revenue zmienia się (np. jeśli filtr wykluczający podatek zostanie dodany), avg_order_value automatycznie dziedziczy tę zmianę, zapewniając, że metryka AOV pozostaje spójna z nową regułą biznesową.
Kompozycyjność z logiką warunkową
Komponowanie umożliwia tworzenie złożonych współczynników, wartości procentowych warunkowych i współczynników wzrostu bez polegania na funkcjach okienkowych do prostych obliczeń z okresu na okres.
Przykład: Stopa realizacji
Aby obliczyć stawkę realizacji (zrealizowane zamówienia/łączne zamówienia), najpierw zdefiniuj miarę dla zakończonych zamówień przy użyciu klauzuli FILTER .
source: samples.tpch.orders
measures:
# Total Orders (denominator)
- name: total_orders
expr: COUNT(1)
comment: Total volume of orders regardless of status.
# Fulfilled Orders (numerator)
- name: fulfilled_orders
expr: COUNT(1) FILTER (WHERE o_orderstatus = 'F')
comment: Only includes orders marked as fulfilled.
# Composed Measure: Fulfillment Rate (Ratio)
- name: fulfillment_rate
expr: MEASURE(fulfilled_orders) / MEASURE(total_orders)
display_name: 'Order Fulfillment Rate'
format:
type: percentage # Using semantic metadata to format as a percent
Najlepsze praktyki dotyczące używania komponowalności
-
Najpierw zdefiniuj miary atomowe: Zawsze ustanów swoje podstawowe miary (
SUM,COUNT,AVG) przed zdefiniowaniem jakichkolwiek miar, które się do nich odwołują. -
Użyj
MEASURE()funkcji w celu zapewnienia spójności: zawsze używaj funkcjiMEASURE()podczas odwoływania się do obliczeń innej miary w ramach elementuexpr. Nie próbuj ręcznie powtarzać logiki agregacji (na przykład należy unikaćSUM(a) / COUNT(b), jeśli miary dla licznika i mianownika już istnieją). -
Określanie priorytetów czytelności: Element
exprdla złożonej miary powinien być odczytywany jak formuła matematyczna kluczowego wskaźnika wydajności. Na przykładMEASURE(Gross Profit) / MEASURE(Total Revenue)jest jaśniejszy i łatwiejszy do przeprowadzenia inspekcji niż pojedyncze złożone wyrażenie SQL. -
Połącz z metadanymi semantycznymi: Po utworzeniu współczynnika użyj metadanych semantycznych (jak pokazano w przykładzie
fulfillment_rate), aby automatycznie sformatować wynik jako wartość procentową lub walutę dla narzędzi podrzędnych. Zobacz Używanie metadanych semantycznych w widokach metryk.