イベント契約
クエリが期待するフィールド
| フィールド | 種類 | なぜ存在するのか |
|---|---|---|
| timestamp_utc | Timestamp | 有意義な活動時間。 |
| team_id | Utf8 | アカウント識別子。 |
| event_name | Utf8 | 適格な製品活動。 |
DataFusion SQL
クエリをコピーする
sql
WITH monthly AS (
SELECT DISTINCT
team_id,
date_trunc('month', timestamp_utc) AS activity_month
FROM product_events
WHERE timestamp_utc >= now() - INTERVAL '180 days'
AND event_name IN ('feature_used', 'query_run', 'dashboard_viewed')
),
transitions AS (
SELECT
activity_month,
team_id,
LAG(activity_month) OVER (
PARTITION BY team_id ORDER BY activity_month
) AS previous_active_month
FROM monthly
)
SELECT
activity_month,
SUM(CASE
WHEN previous_active_month = activity_month - INTERVAL '1 month' THEN 1 ELSE 0
END) AS retained_teams,
SUM(CASE
WHEN previous_active_month < activity_month - INTERVAL '1 month' THEN 1 ELSE 0
END) AS reactivated_teams
FROM transitions
GROUP BY activity_month
ORDER BY activity_month;この読み取り専用クエリは、空の型付きテーブルに対して計画され、実行されます。 アパッチ DataFusion 45.2.0。決定論的なサンプル出力は合成され、個別にレビューされます。フィールド タイプ、しきい値、ビジネス定義を独自のデータと照合して検証します。 テスト方法を読んでください。
クエリ結果
チームの維持と再活性化
再アクティブ化されたアカウントは 3 つの月次コホート全体で増加しました。
2026-05
442
38
2026-06
468
51
2026-07
492
64
| activity_month | retained_teams | reactivated_teams |
|---|---|---|
| 2026-05 | 442 | 38 |
| 2026-06 | 468 | 51 |
| 2026-07 | 492 | 64 |
合成出力例。運用上の決定に使用する前に、独自のイベント スキーマとしきい値に対してクエリを実行します。
例を再現する
パブリックフィクスチャをダウンロードする
JSON バンドルには、型付きイベント コントラクトが含まれています。 illustrative 入力行、正確な SQL、予想される出力、レビューメモ、およびエンジンのバージョン。 CSV には、表示された結果が含まれます。
SQL の仕組み
- 1月次 CTE では、複数の対象となるアクションがアカウントおよび月ごとに重複排除されます。
- 2LAG は、アカウントの前のアクティブな月を見つけます。
- 31 か月のギャップは、継続的な保持を意味します。ギャップが大きいほど再活性化を意味します。
決定すべきエッジケース
- このクエリでは、返されなかった解約アカウントはカウントされません。左結合を使用して前のコホートからそれらを計算します。
- 1 人のユーザーが顧客の健康状態を代表しないコラボレーション製品には、アカウント アクティビティを使用します。
- 社内チームとテストチームを一貫して除外します。
推奨されるダッシュボード
- 積み上げバー: 維持および再アクティブ化されたチーム
- 統計: ロゴの総保持率
- 表: 再アクティブ化されたアカウントと最初に戻ったアクション
レシピを活用する
関連する機器とガイド
分析を続ける
実際のイベントで実行する
テーブルを作成し、フィールドを調整して、結果を保存します
無料で始めて、構造化されたイベントを送信し、クエリ結果をグラフ、共有ダッシュボード ウィジェット、またはアラート入力として使用します。