課金利用 システム テーブル リファレンス

プレビュー

この機能はパブリックプレビュー段階です。

この記事では、課金利用システムテーブルの概要、スキーマ、サンプルクエリなどについて説明します。 システムテーブルを使用すると、アカウントの課金利用データが一元化され、すべてのリージョンにルーティングされるため、ワークスペースがどのリージョンにあっても、アカウントのグローバルな使用状況を表示できます。

課金対象の使用状況テーブルのスキーマ

課金利用 システム テーブルは system.billing.usage にあり、次のスキーマを使用します。

列名

データ型

説明

record_id

文字列

このレコードの一意の ID

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

account_id

文字列

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

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

workspace_id

文字列

この使用状況が関連付けられていたワークスペースの ID

1234567890123456

sku_name

文字列

SKU の名前

STANDARD_ALL_PURPOSE_COMPUTE

cloud

文字列

この使用法が関連するクラウド。 指定できる値は、 AWSAZURE、および GCPです。

AWS、[ AZURE]、または GCP

usage_start_time

タイムスタンプ

この使用レコードに関連する開始時刻

2023-01-09 10:00:00.000

usage_end_time

タイムスタンプ

この使用レコードに関連する終了時刻

2023-01-09 11:00:00.000

usage_date

日付

使用記録の日付。 このフィールドを使用すると、日付による集計を高速化できます。

2023-01-01

custom_tags

地図

この使用法にユーザーによって適用されたタグ

{ “env”: “production” }

usage_unit

文字列

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

DBU

usage_quantity

小数

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

259.2958

usage_metadata

構造 体

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

{cluster_id: null; instance_pool_id: null; notebook_id: null; job_id: null; node_type: null}

identity_metadata

構造 体

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

{run_as: example@email.com}

record_type

文字列

レコードが修正であるかどうか。 可能な値は、 ORIGINALRETRACTIONRESTATEMENTです。

ORIGINAL

ingestion_date

日付

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

2024-01-01

使用状況メタデータの分析

usage_metadataの値は、使用状況記録に関係するリソースに関する情報を示します。

データ型

説明

cluster_id

string

使用状況記録に関連付けられたクラスターのID

instance_pool_id

string

使用状況レコードに関連付けられたインスタンス プールの ID

node_type

string

コンピュートリソースのインスタンスタイプ

job_id

string

使用記録に関連付けられたジョブのID

job_run_id

string

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

notebook_id

string

使用記録に関連付けられたノートブックの ID

dlt_pipeline_id

string

使用状況レコードに関連付けられた Delta Live Tables パイプラインの ID

まれに、 Databricks job_run_id メタデータのキャプチャを開始する前にコンピュートの実行が開始された長時間実行ジョブの場合、job_run_id が設定されないことがあります。 job_run_idの記録を開始するには、ジョブのコンピュートを再起動してください。

UIでジョブまたは小説を検索するには、ジョブまたは小説を使用します。

これらの手順では、ID に基づいて UI で特定のジョブまたはノートブックを表示する方法について説明します。

UI でjob_idに基づいてジョブを検索するには:

  1. 使用状況レコードから job_id をコピーします。 この例では、ID が 700809544510906であると仮定します。

  2. ジョブと同じ Databricks ワークスペース内のワークフローUI に移動します。

  3. 「自分が所有するジョブのみ」フィルターのチェックが外れていることを確認します。

  4. ID ( 700809544510906 ) をフィルタージョブ検索バーに貼り付けます。

notebook_idに基づいて UI でノートブックを検索するには、次の手順に従います。

  1. 使用状況レコードから notebook_id をコピーします。 この例では、ID が 700809544510906であると仮定します。

  2. ノートブックと同じ スペース内の ワークスペース UI に移動します。Databricks

  3. 表示されたノートブックをクリックします。

  4. ノートブックを開いたら、ブラウザのアドレスバーの URL を確認します。 https://<account-console-url>/?o=<workspace ID>#notebook/<notebook ID>/command/<command ID>のようになります。

  5. ブラウザのアドレスバーで、 コンピューター ID を最初のステップでコピーした ID に置き換え、コンピューター ID の後のすべてを削除します。 https://<account-console-url>/?o=<workspace ID>#notebook/700809544510906のようになります。

  6. ノートブックを表示した後、 「共有」ボタンをクリックしてノートブックの所有者を表示できます。

ID メタデータの分析

identity_metadata列は、サーバーレス課金レコードの責任者を特定するのに役立ちます。 この列には、使用状況を ID に帰属させる run_as 値が含まれます。 identity_metadata.run_asに記録される ID は、使用法に関連付けられた製品によって異なります。

identity_metadata.run_as動作については、次の表を参照してください。

ワークロードの種類

のアイデンティティ run_as

サーバレスコンピュート for ワークフロー

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

サーバレス・コンピュート for ドイツ語

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

サーバレスコンピュートの使用

サーバーレスの使用状況を分析する戦略については、 「サーバーレス コンピュートのコストを監視する」を参照してください。

サンプルクエリー

次のサンプル クエリーを使用して、課金対象の使用量に関する一般的な質問に答えることができます。

DBU消費の日々の傾向は何ですか?

SELECT usage_date as `Date`, sum(usage_quantity) as `DBUs Consumed`
  FROM system.billing.usage
WHERE sku_name = "STANDARD_ALL_PURPOSE_COMPUTE"
GROUP BY usage_date
ORDER BY usage_date ASC

今月中に使用された各 SKU の DBU の数はいくつですか?

SELECT sku_name, usage_date, sum(usage_quantity) as `DBUs`
    FROM system.billing.usage
WHERE
    month(usage_date) = month(NOW())
    AND year(usage_date) = year(NOW())
GROUP BY sku_name, usage_date

6 月 1 日にワークスペースで使用された各 SKU の量。

必ず workspace_id 実際のワークスペース ID に置き換えてください。

SELECT sku_name, sum(usage_quantity) as `DBUs consumed`
FROM system.billing.usage
WHERE workspace_id = 1234567890123456
AND usage_date = "2023-06-01"
GROUP BY sku_name

このクエリーは、選択した日付にワークスペースで使用される一意の SKU ID ごとに 1 行を返します。

どのジョブが最も多くの DBU を消費しましたか?

SELECT usage_metadata.job_id as `Job ID`, sum(usage_quantity) as `DBUs`
FROM system.billing.usage
WHERE usage_metadata.job_id IS NOT NULL
GROUP BY `Job ID`
ORDER BY `DBUs` DESC

特定のタグが付いたリソースの使用量はどの程度になりますか?

コストはさまざまな方法で分類できます。 この例では、カスタム タグ別にコストを分類する方法を示します。 クエリ内のカスタム タグのキーと値を必ず置き換えてください。

SELECT sku_name, usage_unit, SUM(usage_quantity) as `DBUs consumed`
FROM system.billing.usage
WHERE custom_tags.{{key}} = "{{value}}"
GROUP BY 1, 2

使用量が増加し ている SKU を表示する

SELECT after.sku_name, before_dbus, after_dbus, ((after_dbus - before_dbus)/before_dbus * 100) AS growth_rate
FROM
(SELECT sku_name, sum(usage_quantity) as before_dbus
    FROM system.billing.usage
WHERE usage_date BETWEEN "2023-04-01" and "2023-04-30"
GROUP BY sku_name) as before
JOIN
(SELECT sku_name, sum(usage_quantity) as after_dbus
    FROM system.billing.usage
WHERE usage_date BETWEEN "2023-05-01" and "2023-05-30"
GROUP BY sku_name) as after
where before.sku_name = after.sku_name
SORT by growth_rate DESC

万能コンピュート(フォトン)の利用動向は?

SELECT sku_name, usage_date, sum(usage_quantity) as `DBUs consumed`
    FROM system.billing.usage
WHERE year(usage_date) = year(CURRENT_DATE)
AND sku_name = "ENTERPRISE_ALL_PURPOSE_COMPUTE_(PHOTON)"
AND usage_date > "2023-04-15"
GROUP BY sku_name, usage_date

マテリアライズド ビューまたはストリーミング テーブルの DBU 消費量はどれくらいですか?

特定のマテリアライズド ビューまたはストリーミング テーブルの DBU 使用量と SKU を確認するには、関連付けられたパイプライン ID ( dlt_pipeline_id ) が必要です。 カタログ エクスプローラーで関連するマテリアライズド ビューまたはストリーミング テーブルを表示するときに、 [詳細]タブでパイプライン ID を見つけます。

SELECT
  sku_name,
  usage_date,
  SUM(usage_quantity) AS `DBUs`
FROM
  system.billing.usage
WHERE
  usage_metadata.dlt_pipeline_id = "113739b7-3f45-4a88-b6d9-e97051e773b9"
  AND usage_start_time > "2023-05-30"
GROUP BY
  ALL