活動合約
查詢期望的欄位
| 欄位 | 型別 | 為什麼存在 |
|---|---|---|
| timestamp_utc | Timestamp | 活動發生時。 |
| user_id | Utf8 | 穩定的使用者識別符號。 |
| event_name | Utf8 | 產品事件名稱。 |
DataFusion SQL
複製查詢
sql
WITH first_activity AS (
SELECT
user_id,
date_trunc('week', MIN(timestamp_utc)) AS cohort_week
FROM product_events
WHERE event_name = 'first_value_completed'
GROUP BY user_id
),
weekly_activity AS (
SELECT DISTINCT
user_id,
date_trunc('week', timestamp_utc) AS activity_week
FROM product_events
WHERE event_name = 'core_feature_used'
),
cohort_activity AS (
SELECT
f.cohort_week,
(date_part('epoch', a.activity_week)
- date_part('epoch', f.cohort_week)) / 604800 AS week_number,
COUNT(DISTINCT a.user_id) AS retained_users
FROM first_activity f
JOIN weekly_activity a ON f.user_id = a.user_id
WHERE a.activity_week >= f.cohort_week
GROUP BY
f.cohort_week,
(date_part('epoch', a.activity_week)
- date_part('epoch', f.cohort_week)) / 604800
),
cohort_sizes AS (
SELECT cohort_week, COUNT(*) AS cohort_size
FROM first_activity
GROUP BY cohort_week
)
SELECT
c.cohort_week,
c.week_number,
c.retained_users,
s.cohort_size,
100.0 * c.retained_users / NULLIF(s.cohort_size, 0) AS retention_pct
FROM cohort_activity c
JOIN cohort_sizes s ON c.cohort_week = s.cohort_week
WHERE c.week_number BETWEEN 0 AND 12
ORDER BY c.cohort_week, c.week_number;此只讀查詢是針對空型別資料表計劃和執行的 阿帕奇 DataFusion 45.2.0。確定性樣本輸出是綜合的並單獨審查;根據您自己的資料驗證欄位型別、閾值和業務定義。 閱讀測試方法。
查詢結果
啟用佇列的每週保留率
較老的群體在第一週保留了一半的使用者;較新的群體還不夠成熟,無法進行第一週的比較。
周 0
100%
佇列 2026-07-20
周 1
50%
佇列 2026-07-20
周 0
100%
佇列 2026-07-27
| cohort_week | week_number | retained_users | cohort_size | retention_pct |
|---|---|---|---|---|
| 2026-07-20 | 0 | 4 | 4 | 100 |
| 2026-07-20 | 1 | 2 | 4 | 50 |
| 2026-07-27 | 0 | 3 | 3 | 100 |
綜合範例輸出。在將其用於操作決策之前,針對您自己的事件架構和閾值執行查詢。
SQL 是如何工作的
- 1第一個 CTE 定義了每個使用者從首次完成價值里程碑那周起的群組。
- 2每週活動都會進行重複資料刪除,因此一週內的多個活動將計為一個保留使用者。
- 3時間戳差異從天轉換為一週偏移,可以在群組之間進行比較。
需要決定的邊緣情況
- 比較不同年齡的佇列時,排除不完整的未來幾周。
- 定義來自有意義的活動而不是任何頁面檢視的返回行為。
- UTC 周邊界可能與業務時區不匹配;記錄所選邊界。
推薦儀表板
- 熱圖樣式資料表:cohort_week by week_number
- 折線圖:retention_pct by week_number 除以 cohort_week
- 統計資料:成熟佇列第四周的保留率
讓查詢範例發揮作用
相關埋點和指南
繼續分析
在真實事件中執行它
建立資料表,調整欄位並儲存結果
免費開始,傳送結構化事件,並將查詢結果用作圖表、共享儀表板小工具或警示輸入。