メインコンテンツまでスキップ

請求ログの表示とクエリ

この記事では、管理者が請求システムテーブルを使用して SAP Databricks アカウントの使用状況を監視する方法について説明します。

システムテーブルとは

システムテーブルは、 system カタログにあるアカウントの運用データの分析ストアです。システムテーブルは、アカウント全体の履歴オブザーバビリティに使用できます。これらは読み取り専用であり、変更できません。

billing スキーマへのアクセスを許可するには、メタストア管理者とアカウント管理者の両方であるユーザーが、システム スキーマに対するUSE権限とSELECT権限を付与する必要があります。

利用可能な請求テーブル

コストを監視するために使用できるテーブルは 2 つあります。

  • system.billing.usage:アカウント全体の課金利用データにアクセスできます。
  • system.billing.list_prices: SKUの価格の履歴ログにアクセスできます。レコードは、SKU 価格が変更されるたびに追加されます。

課金利用 Table Schem

テーブルパス :このシステムテーブルは system.billing.usageにあります。

課金利用 システムテーブルは、次のスキーマを使用します。

列名

データ型

説明

record_id

string

この使用レコードの一意の ID

11e22ba4-87b9-4cc2-9770-d10b894b7118

account_id

string

このレポートが生成されたアカウントの ID

23e22ba4-87b9-4cc2-9770-d10b894b7118

workspace_id

string

この使用法が関連付けられたワークスペースの ID

1234567890123456

sku_name

string

SKU の名前

ENTERPRISE_SAP_ALL_PURPOSE_SERVERLESS_COMPUTE_EUROPE_FRANKFURT

cloud

string

この使用状況に関連付けられたクラウド。指定できる値は、 AWSAZURE、および GCPです。

AWS

usage_start_time

timestamp

この使用レコードに関連する開始時刻。タイムゾーン情報は、UTCタイムゾーンを表す +00:00 で値の末尾に記録されます。

2025-01-09 10:00:00.000+00:00

usage_end_time

timestamp

この使用レコードに関連する終了時刻。タイムゾーン情報は、UTCタイムゾーンを表す +00:00 で値の末尾に記録されます。

2025-01-09 11:00:00.000+00:00

usage_date

日付

使用状況レコードの日付、このフィールドを使用すると、日付による集計を高速化できます

2025-01-01

custom_tags

map

使用に関連付けられたサーバレス 予算ポリシーから伝播されたカスタム タグ

{ “team”: “marketing” }

usage_unit

string

この使用量が測定される単位

DBU

usage_quantity

DECIMALタイプ

このレコードで消費されたユニット数

259.2958

usage_metadata

struct

コンピュート リソースとジョブ (該当する場合) の ID など、使用状況に関するシステム提供のメタデータ。 使用状況メタデータを参照してください。

使用状況メタデータを参照してください

identity_metadata

struct

使用に関連する ID に関するシステム提供のメタデータ。「ID メタデータ」を参照してください。

「ID メタデータ」を参照してください。

record_type

string

レコードがオリジナル、撤回、または修正のいずれであるか。レコードが修正に関連している場合を除き、値は ORIGINAL です。

ORIGINAL

ingestion_date

日付

レコードが usage テーブルに取り込まれた日付

2024-01-01

billing_origin_product

string

使用を開始した製品。一部の製品は、異なるSKUとして請求できます。 使用可能な値については、 製品を参照してください。

JOBS

product_features

struct

使用されている特定の製品機能の詳細。

is_serverless: true

usage_type

string

請求目的で製品またはワークロードに起因する使用のタイプ。可能な値は、 COMPUTE_TIMESTORAGE_SPACENETWORK_BYTESNETWORK_HOURAPI_OPERATION、または TOKENです。

STORAGE_SPACE

価格テーブルのスキーマ

テーブルパス :このシステムテーブルは system.billing.list_pricesにあります。

価格 システムテーブルは、次のスキーマを使用します。

列名

データ型

説明

price_start_time

timestamp

この価格が発効した時刻(UTC)

2023-01-01T09:59:59.999Z

price_end_time

timestamp

この価格がUTCで有効でなくなった時間

2023-01-01T09:59:59.999Z

account_id

string

このレポートが生成されたアカウントの ID

1234567890123456

sku_name

string

SKU の名前

ENTERPRISE_SAP_ALL_PURPOSE_SERVERLESS_COMPUTE_EUROPE_FRANKFURT

cloud

string

この価格が適用されるクラウドの名前。指定できる値は、 AWSAZURE、および GCPです。

AWSAZURE、または GCP

currency_code

string

この価格を表す通貨。値は次のようになります CU

CU

usage_unit

string

収益化される測定単位。指定できる値は、 DBUDSUHOUR、および GBです。

DBU

pricing

struct

公開された正規価格の料金情報を含む構造化データ フィールド。キー default は、単純な長期見積もりに使用できる単一の価格を常に返します。キー promotional は、すべての顧客が取得する一時的なプロモーション価格を表しており、一時的な期間中のコスト見積もりに使用できます。キー effective_list は、希望小売価格とプロモーション価格を解決し、コストの計算に使用される有効な希望小売価格を含みます。一部の価格モデルには、より詳細な情報を提供する追加のキーが含まれている場合があります。

{ "default": "0.10", "promotional": {"default": "0.07"}, "effective_list": {"default": "0.07"} }

使用量表の読み方

usage テーブルのすべての請求レコードには、使用量を関連する特定のリソース、ID、および製品に帰属させる列が含まれています。使用状況を特定のワークロード、機能、ID に帰属させるには、次の列を使用します。

  • usage_metadata列には、使用に関連するリソースまたはオブジェクトに関する情報を含む構造体が含まれています。
  • identity_metadata列には、使用量の原因となったユーザーまたはサービスプリンシパルに関する情報が含まれます。
  • custom_tags 列には、サーバレス 予算ポリシーによって追加されたタグが含まれます。詳細については、 サーバレス 予算ポリシーでの属性の使用を参照してください。
  • billing_origin_product列には、使用された正確な製品に関する情報が表示されます。

使用状況メタデータの参照

usage_metadataの値はすべて、使用状況レコードに関連するワークスペース オブジェクトを示す文字列です。

これらの値のサブセットのみが、使用されるコンピュートの種類と機能に応じて、特定の使用状況レコードに入力されます。 次の表は、SAP Databricks アカウントに入力できる値の概要を示しています。

Value

説明

job_id

使用状況レコードに関連付けられたジョブの ID

warehouse_id

使用レコードに関連付けられた SQLウェアハウスの ID

job_run_id

使用状況レコードに関連付けられたジョブ実行の ID

notebook_id

使用状況に関連付けられているノートブックの ID

endpoint_name

使用状況レコードに関連付けられているモデルサービング エンドポイントまたはベクトル検索エンドポイントの名前

endpoint_id

使用状況レコードに関連付けられたモデルサービング エンドポイントまたはベクトル検索エンドポイントの ID

run_name

使用状況レコードに関連付けられた基盤モデル ファインチューニング 実行の一意のユーザー向け名前

job_name

使用状況レコードに関連付けられたジョブのユーザー指定の名前

notebook_path

使用状況に関連付けられているノートブックのワークスペース ストレージ パス

source_region

使用状況に関連付けられているワークスペースのリージョン。サーバレス ネットワーキング関連の使用状況の値のみを返します。

destination_region

アクセスされているリソースのリージョン。サーバレス ネットワーキング関連の使用状況の値のみを返します。

budget_policy_id

ワークロードにアタッチされているサーバレス 予算ポリシーの ID

ID メタデータの参照

identity_metadata列には、使用に関連する ID に関する詳細情報が表示されます。

  • run_as フィールドには、ワークロードを実行したユーザーが記録されます。この値は、次の表に示す特定のワークロードの種類に対してのみ設定されます。
  • owned_byフィールドはSQLウェアハウスの使用状況にのみ適用され、使用状況を担当するSQLウェアハウスを所有するユーザーまたはサービスプリンシパルをログに記録します。

実行 IDS

identity_metadata.run_asに記録される ID は、使用状況に関連付けられている製品によって異なります。identity_metadata.run_asの動作については、次の表を参照してください。

ワークロードの種類

のアイデンティティ run_as

ジョブ用サーバレスコンピュート

run_as設定で定義されているユーザーまたはサービスプリンシパル。デフォルトでは、ジョブはジョブ所有者のIDとして実行されますが、管理者はこれを別のユーザーまたはサービスプリンシパルに変更できます。

ノートブック実行用サーバレスコンピュート

ノートブック コマンドを実行したユーザー (具体的には、ノートブック セッションを作成したユーザー)。共有ノートブックの場合、これには同じノートブック セッションを共有する他のユーザーによる使用が含まれます。

基盤モデルのファインチューニング

ファインチューニング トレーニング 実行を開始したユーザーまたはサービスプリンシパル。

Lakehouseモニタリング

モニターを作成したユーザー。

請求元製品参照

billing_origin_product 列には、使用状況レコードに関連付けられている Databricks 製品が表示されます。値には次のものが含まれます。

  • JOBS
  • SQL
  • MODEL_SERVING
  • INTERACTIVE
  • DEFAULT_STORAGE
  • VECTOR_SEARCH
  • LAKEHOUSE_MONITORING
  • FOUNDATION_MODEL_TRAINING
  • AGENT_EVALUATION
  • NETWORKING: サーバレス コンピュートをリソースに接続するためのコスト

サンプル クエリ

次のクエリを使用して、アカウント内の使用状況について理解を深めます。

list_prices テーブルを使用量テーブルに結合します

list_prices表には、利用可能な各SKUの経時的な定価が含まれています。usageテーブルを結合して、特定の使用量のリストコストを表示できます。

たとえば、次のクエリは、特定のユーザーに帰属する月間の合計費用を返します。括弧で囲まれたセクションに有効な ID を必ず挿入してください。

SQL
SELECT
SUM(usage.usage_quantity * list_prices.pricing.effective_list.default)
as `Total Dollar Cost`
FROM system.billing.usage
JOIN system.billing.list_prices ON list_prices.sku_name = usage.sku_name
WHERE identity_metadata.run_as = {{'sample identity'}}
AND usage.usage_end_time >= list_prices.price_start_time
AND (list_prices.price_end_time IS NULL OR usage.usage_end_time < list_prices.price_end_time)
AND usage.usage_date BETWEEN "2025-04-01" AND "2025-04-15"

高価なノートブックを特定する

このクエリは、ノートブックのリストと、各ノートブックが消費したDBUの数を、DBU消費量の降順で返します。

SQL
SELECT
usage_metadata.notebook_id,
usage_metadata. notebook_path,
SUM(usage_quantity) as total_dbu
FROM
system.billing.usage
WHERE
usage_metadata.notebook_id is not null
and billing_origin_product = 'INTERACTIVE'
and product_features.is_serverless
and usage_unit = 'DBU'
and usage_date >= DATEADD(day, -30, current_date)
GROUP BY
1,2
ORDER BY
total_dbu DESC

コストの高いジョブを特定する

このクエリは、ジョブのリストと、各ジョブが消費したDBUの数を、DBU消費量の降順で返します。

SQL
SELECT
usage_metadata.job_id,
usage_metadata.job_name,
SUM(usage_quantity) as total_dbu
FROM
system.billing.usage
WHERE
usage_metadata.job_id is not null
and usage_unit = 'DBU'
and usage_date >= DATEADD(day, -30, current_date)
and sku_name like '%JOBS_SERVERLESS_COMPUTE%'
GROUP BY
1,2
ORDER BY
total_dbu DESC

特定のユーザーが消費したDBUに関するレポート

このクエリは、特定のユーザーまたはサービスプリンシパルによって実行されたノートブックとジョブのリスト、および各ワークロードによって消費された DBU の数を返します。 パラメーターを使用して、有効なユーザー Eメール アドレスを挿入してください。

SQL
SELECT
usage_metadata.job_id,
usage_metadata.job_name,
usage_metadata.notebook_id,
usage_metadata. notebook_path,
SUM(usage_quantity) as total_dbu
FROM
system.billing.usage
WHERE
identity_metadata.run_as = format_string('%s@%s.%s', :user_name, :domain_name, :top_level_domain)
and usage_date >= DATEADD(day, -30, current_date)
GROUP BY
1,2,3,4
ORDER BY
total_dbu DESC

カスタム タグを共有するワークロードによって消費された DBU に関するレポートReport on DBU consumed by workloads that share a custom tag

このクエリは、同じカスタム タグを共有するジョブの一覧と、各ワークロードによって消費された DBU の数を返します。

SQL
SELECT
usage_metadata.job_id,
usage_metadata.job_name,
usage_metadata.notebook_id,
usage_metadata. notebook_path,
SUM(usage_quantity) as total_dbu
FROM
system.billing.usage
WHERE
custom_tags.<key> = '<value>'
and billing_origin_product in ('JOBS','INTERACTIVE')
and product_features.is_serverless
and usage_unit = 'DBU'
and usage_date >= DATEADD(day, -30, current_date)
GROUP BY
1,2,3,4
ORDER BY
total_dbu DESC