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

プレビュー

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

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

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

課金利用 システム テーブルは 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

構造 体

AzureおよびAWSでサーバーレス レコードを属性付けるために使用されます。 値は nullになります。

null

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. ノートブックを表示した後、 「共有」ボタンをクリックしてノートブックの所有者を表示できます。

サンプルクエリー

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

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