本文へ移動
Telemetry
収益と請求 SQL レシピ

アカウントごとの使用量クォータの消費量を計算する

各アカウントに含まれる月次割り当てに対して請求可能単位を測定し、超過に近づいているアカウントをランク付けします。

初心者usage_meter_eventsレビュー済み 2026-07-28テスト済み アパッチ DataFusion 45.2.0

レビュー者 Telemetry 製品チーム . SQL の互換性、イベント コントラクト、合成出力、および操作上の注意事項. 基準と所有権を確認する

質問に回答しました

今月、含まれている使用量を最も早く消費しているアカウントはどれですか?

使用量ベースの課金には、安定した単位、冪等のメーター イベント、および使用量が発生したときに適用されたクォータが必要です。このクエリは、生のイベント数を請求対象の使用量として処理せずに、クォータ消費量を表示します。

イベント契約

クエリが期待するフィールド

フィールド種類なぜ存在するのか
timestamp_utcTimestamp請求可能なアクティビティが UTC で完了したとき。
meter_event_idUtf81 つの論理使用状況レコードの冪等キー。
account_idUtf8安定した請求先アカウント ID。
planUtf8使用量が発生したときにクォータを所有していたプラン。
billable_unitsFloat64このイベントによって追加された正規化されたユニット。
included_unitsFloat64アカウントとプランに含まれる毎月の割り当て。
DataFusion SQL

クエリをコピーする

sql
WITH deduplicated_usage AS (
  SELECT
    meter_event_id,
    account_id,
    plan,
    MAX(billable_units) AS billable_units,
    MAX(included_units) AS included_units
  FROM usage_meter_events
  WHERE timestamp_utc >= date_trunc('month', now())
  GROUP BY meter_event_id, account_id, plan
)
SELECT
  account_id,
  plan,
  COUNT(*) AS meter_events,
  SUM(billable_units) AS used_units,
  MAX(included_units) AS included_units,
  100.0 * SUM(billable_units)
    / NULLIF(MAX(included_units), 0) AS quota_used_pct,
  SUM(billable_units) - MAX(included_units) AS overage_units
FROM deduplicated_usage
GROUP BY account_id, plan
ORDER BY quota_used_pct DESC;

この読み取り専用クエリは、空の型付きテーブルに対して計画され、実行されます。 アパッチ DataFusion 45.2.0。決定論的なサンプル出力は合成され、個別にレビューされます。フィールド タイプ、しきい値、ビジネス定義を独自のデータと照合して検証します。 テスト方法を読んでください。

クエリ結果

アカウントごとに使用される月間割り当て量

Harbor は含まれている割り当てを超えていますが、Lumen は予測または顧客への通知が必要なほどに近づいています。

account_idplanmeter_eventsused_unitsincluded_unitsquota_used_pctoverage_units
account_harborgrowth18,4201,126,0001,000,000112.6126,000
account_lumengrowth12,880842,0001,000,00084.2-158,000
account_northstarter3,610168,000250,00067.2-82,000

合成出力例。運用上の決定に使用する前に、独自のイベント スキーマとしきい値に対してクエリを実行します。

Monthly quota used by account: Calculate Usage Quota Burn by Account 結果例からの合成 quota_used_pct 値の静的チャート
決定論的な出力例のインデックス可能な SVG。記事、ランブック、または出典を明示した設計レビューのためにダウンロードしてください。

例を再現する

パブリックフィクスチャをダウンロードする

JSON バンドルには、型付きイベント コントラクトが含まれています。 illustrative 入力行、正確な SQL、予想される出力、レビューメモ、およびエンジンのバージョン。 CSV には、表示された結果が含まれます。

SQL の仕組み

  1. 1最初の CTE はメーター イベント ID によってグループ化されるため、少なくとも 1 回の配信では同じ論理使用量を 2 回請求することはできません。
  2. 21 つのリクエストが多くのユニットまたは端数のユニットを表す可能性があるため、請求可能なユニットはイベント数とは独立して合計されます。
  3. 3クォータの割合と超過量は、アカウントのランキングと請求の確認に必要なプラン固有の分母を保持します。

決定すべきエッジケース

  • 計画の変更には明示的な比例配分ポリシーが必要です。単一の月間最大値は、クォータが期間の途中で変更される可能性がある場合の例です。
  • 修正と否定的な使用には、以前のイベントをサイレントに変更するのではなく、追加のみの調整コントラクトが必要です。
  • 請求書が最終的なものになる前に、請求プロバイダーと集計を調整します。

推奨されるダッシュボード

  • バー: quota_used_pct (アカウント別)
  • 表: 使用済みユニット、含まれているユニット、および超過ユニット
  • 傾向: 75% を超えるアカウントの日次請求単位

アラートガイダンス

文書化されたクォータしきい値でアカウント所有者に通知し、メーターの配信または調整が失敗した場合にのみページングします。

アラート設定を読む

レシピを活用する

関連する機器とガイド

ソースデータを定義する

この分析のイベント スキーマ

分析を続ける

実際のイベントで実行する

テーブルを作成し、フィールドを調整して、結果を保存します

無料で始めて、構造化されたイベントを送信し、クエリ結果をグラフ、共有ダッシュボード ウィジェット、またはアラート入力として使用します。

API キーを取得する