イベント契約
クエリが期待するフィールド
| フィールド | 種類 | なぜ存在するのか |
|---|---|---|
| timestamp_utc | Timestamp | 請求の移動時間。 |
| account_id | Utf8 | 安定した請求先アカウント ID。 |
| movement_type | Utf8 | 新規、拡大、縮小、チャーン、または再活性化。 |
| mrr_change_usd | Float64 | 符号付き正規化経常収益の変化。 |
DataFusion SQL
クエリをコピーする
sql
SELECT
date_trunc('month', timestamp_utc) AS month,
SUM(CASE
WHEN movement_type IN ('new', 'expansion', 'reactivation')
THEN mrr_change_usd ELSE 0.0
END) AS growth_mrr_usd,
-SUM(CASE
WHEN movement_type IN ('contraction', 'churn')
THEN mrr_change_usd ELSE 0.0
END) AS lost_mrr_usd,
SUM(mrr_change_usd) AS net_mrr_change_usd,
COUNT(DISTINCT account_id) AS accounts_changed
FROM billing_events
WHERE timestamp_utc >= now() - INTERVAL '12 months'
GROUP BY date_trunc('month', timestamp_utc)
ORDER BY month;この読み取り専用クエリは、空の型付きテーブルに対して計画され、実行されます。 アパッチ DataFusion 45.2.0。決定論的なサンプル出力は合成され、個別にレビューされます。フィールド タイプ、しきい値、ビジネス定義を独自のデータと照合して検証します。 テスト方法を読んでください。
クエリ結果
経常収益の増減
7 月は引き続きプラスでしたが、縮小と解約により総成長率が大幅に減少しました。
2026-05
18,400 USD
7,200 USD
2026-06
22,100 USD
9,800 USD
2026-07
20,700 USD
13,400 USD
| month | growth_mrr_usd | lost_mrr_usd | net_mrr_change_usd | accounts_changed |
|---|---|---|---|---|
| 2026-05 | 18,400 | 7,200 | 11,200 | 93 |
| 2026-06 | 22,100 | 9,800 | 12,300 | 117 |
| 2026-07 | 20,700 | 13,400 | 7,300 | 126 |
合成出力例。運用上の決定に使用する前に、独自のイベント スキーマとしきい値に対してクエリを実行します。
例を再現する
パブリックフィクスチャをダウンロードする
JSON バンドルには、型付きイベント コントラクトが含まれています。 illustrative 入力行、正確な SQL、予想される出力、レビューメモ、およびエンジンのバージョン。 CSV には、表示された結果が含まれます。
SQL の仕組み
- 1ポジティブな動きは、新規MRR、拡張MRR、再活性化MRRを組み合わせたものです。
- 2失われた MRR は読み取り可能な正のバーで打ち消されますが、純変化は符号付きの合計を保持します。
- 3明確な口座数は、広範な動きと 1 つの異常に大規模な契約を区別するのに役立ちます。
決定すべきエッジケース
- 請求変更の動きを 1 つだけ送信するか、プロバイダー イベント ID によって調整します。
- 年間契約が予約時またはサービス時に正規化された月次価値に寄与するかどうかを定義します。
- 一時的な料金と使用料収入を経常的な収入から分離します。
推奨されるダッシュボード
- 積み上げバー: growth_mrr_usd および lost_mrr_usd
- トレンド: net_mrr_change_usd
- 表: アカウントレベルの最大の動き
レシピを活用する
関連する機器とガイド
ソースデータを定義する
この分析のイベント スキーマ
分析を続ける
実際のイベントで実行する
テーブルを作成し、フィールドを調整して、結果を保存します
無料で始めて、構造化されたイベントを送信し、クエリ結果をグラフ、共有ダッシュボード ウィジェット、またはアラート入力として使用します。