Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfada, metrik görünümlerinde birleşebilirliğin nasıl çalıştığı açıklanır ve tek bir görünümde boyutlar, ölçüler ve ilişkilendirmeler oluşturarak mantık oluşturmayı gösteren örnekler sağlanır.
Genel Bakış
Ölçüm görünümleri birleştirilebilir, yani katmanlı, yeniden kullanılabilir mantık tanımlayabilirsiniz. Her tanımı sıfırdan yazmak yerine, mevcut boyut ve ölçüleri temel alan yenilerini oluşturabilirsiniz.
Oluşturulabilirlik ile şunları yapabilirsiniz:
- Yeni boyutlarda önceden tanımlanmış boyutlara başvurma
- Yeni ölçülerde herhangi bir boyuta veya önceden tanımlanmış ölçülere başvurma
- Ölçüm görünümünde tanımlanan birleştirmelerden sütunlara başvuru yapma
Birleştirme, yinelenenleri önlemenize, ölçüm tanımlarını kolaylaştırmanıza ve her seferinde ham SQL gerektirmeden daha karmaşık analizi desteklemenize yardımcı olur.
Metriğin birleştirilebilirliği
Birleştirme , daha basit, temel ölçüleri yeniden kullanarak karmaşık ölçümler oluşturma ilkesidir. Türetilmiş her KPI için karmaşık, iç içe yerleştirilmiş SQL mantığı yazmak ve sürdürmek yerine, temel "atomik" ölçü birimlerini bir kez tanımlar ve daha sonra bu ölçülere diğer, daha karmaşık hesaplamalarda başvurursunuz. Bu yaklaşım semantik katmanınızın tutarlılığını, denetlenebilirliğini ve bakımını önemli ölçüde artırır.
Bileşenliğin temeli, bir ölçüm tanımının aynı metrik görünümünde tanımlanan diğer ölçümlere başvurmasını sağlayan MEASURE() işlevdir.
Birlenebilirlik ile ölçüleri tanımlama
Bileşenoluşturma ölçüm görünümü YAML bölümünde hayata geçirilir measures.
| Ölçü Türü | Description | Example |
|---|---|---|
| Atomik | Kaynak sütunda basit, doğrudan birleştirme. Bunlar yapı taşları oluşturur. | SUM(o_totalprice) |
| Oluşan |
MEASURE() işlevini kullanarak bir veya daha fazla ölçüyü matematiksel olarak birleştiren ifade. |
MEASURE(Total Revenue) / MEASURE(Order Count) |
Örnek: Ortalama Sipariş Değeri (AOV)
Ortalama Sipariş Değeri'nin (AOV) hesaplanması için iki ölçü gerekir: Total Revenue ve 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'
Bu örnekte, total_revenue tanım değişirse (örneğin, vergi hariç tutmak için bir filtre eklenirse), avg_order_value bu değişikliği otomatik olarak devralır ve AOV metriğinin yeni iş kuralıyla tutarlı kalmasını sağlar.
Koşullu mantık ile birlikte kullanılabilirlik
Basit dönem içi hesaplamalar için pencere işlevlerine bağlı kalmadan karmaşık oranlar, koşullu yüzdeler ve büyüme oranları oluşturmak için birleştirebilirsiniz.
Örnek: Karşılama Oranı
Karşılama Oranını (Karşılanan Siparişler / Toplam Siparişler) hesaplamak için önce bir FILTER yan tümce kullanarak tamamlanmış siparişlerin ölçüsünü tanımlarsınız.
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
Bestelenebilirliği kullanmak için en iyi yöntemler
-
Önce atomik ölçüleri tanımlayın: Bunlara başvuran ölçüleri tanımlamadan önce her zaman temel ölçülerinizi (
SUM,COUNT,AVG) oluşturun. -
Tutarlılık için şunu kullanın
MEASURE(): birMEASURE()içindeki başka bir ölçününexprhesaplamasını referans alırken her zamanexprişlevini kullanın. Toplama mantığını el ile yinelemeyi denemeyin (örneğin, hem pay hem de payda için ölçülerin zaten mevcut olduğu durumdaSUM(a) / COUNT(b)kullanmaktan kaçının). - Okunabilirliğe öncelik verin: KPI için oluşturulan ölçüm, matematiksel bir formül gibi okunmalıdır. Örneğin,
MEASURE(Gross Profit) / MEASURE(Total Revenue)tek bir karmaşık SQL ifadesinden daha net ve denetlenmek daha kolaydır. -
Anlam meta verileriyle birleştirin: Bir oran oluşturdıktan sonra, sonucu aşağı akış araçları için yüzde veya para birimi olarak otomatik olarak biçimlendirmek için semantik meta verileri (örnekte gösterildiği
fulfillment_rategibi) kullanın. Bkz . Ölçüm görünümlerinde anlam meta verilerini kullanma.