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

Databricks データを操作する

Databricks のデータを DoiT プラットフォームにインポートしたら、Databricks のコストと使用状況の分析と監視を開始できます。Databricks データは時間単位で追跡・レポートされます。

Databricks のシステムテーブル

DoiT コンソールは、次の Databricks システムテーブルと連携します。

System TableDescription
system.billing.usageアカウント全体の請求対象の使用状況レコードを含みます。
system.billing.list_pricesSKU 価格の履歴ログ。SKU 価格に変更があるたびにレコードが追加されます。
system.compute.node_timeline汎用およびジョブのコンピュートリソースの利用メトリクスを取得します。
system.access.workspaces_latestアカウント内のすべてのワークスペースのメタデータを含みます。
system.compute.clusters任意のクラスタについて、時間経過に伴うコンピュート設定の完全な履歴を含みます。
system.compute.warehouses任意の SQL ウェアハウスについて、時間経過に伴う設定の完全な履歴を含みます。

必要な権限は、DoiT コネクタ用にサービスプリンシパルを作成すると付与されます。

Cloud Analytics における Databricks データ

ディメンションメトリクスを通じて Databricks データを取得できます。DoiT と Databricks の用語の対応は以下を参照してください。

基本メトリクス

DoiT term
Databricks termDescription
costcostコンピュートのワークロード(クラスタ、SQL ウェアハウスなど)で消費された Databricks Units(DBU)の合計コストと、基盤となるインフラに対して選択したクラウドプロバイダから発生する個別の料金。
usageusageワークロードやユーザーによって使用された Databricks のコンピュートリソース(DBU)および特定機能の消費。

標準ディメンション

DoiT termDescription
Billing Account特定の Databricks アカウントの一意の識別子。billing usage table schemaaccount_id に対応。
Project IDDatabricks ウェアハウスの一意の識別子。billing usage table schemaworkspace_id に対応。
Project/Account nameDatabricks ワークスペースの名前。workspaces system table schemaworkspace_name に対応。
Usage start time記録された使用が発生した時間または課金間隔の開始時刻。billing usage table schemausage_start_time に対応。
Usage end time記録された使用が発生した課金間隔の終了時刻。billing usage table schemausage_end_time に対応。
Service ID/description請求対象の使用の元となった特定の Databricks 製品または機能。billing usage table schemabilling_origin_product に対応。例:SQLALL_PURPOSEINTERACTIVE
SKU ID/Description特定の使用レコードで消費され、コストが発生した SKU(在庫管理単位)。billing usage table schemausage_sku_name に対応。例:STANDARD_ALL_PURPOSE_COMPUTESQL_CLASSIC_COMPUTEENTERPRISE_ALL_PURPOSE_COMPUTE_(PHOTON)
Report cost特定の使用単位に対する米ドル(または設定した通貨)での推定コスト。billing usage table schemausage_quantity と、pricing table schemapricing に対応。
Report usage記録された時間間隔中に特定の Databricks 製品、機能、またはリソースが消費した単位数。usage_quantityusage_unit に依存。例えば、usage_unitSTORAGE_SPACE の場合、usage_quantity は TB-hours や GB-hours になることがあります。billing usage table schemausage_quantity に対応。
Usage unitusage_quantity の測定単位。billing usage table schemausage_unit に対応。例:DBUSTORAGE_SPACENETWORK_BYTEAPI_OPERATION
Cost type使用レコードが元のエントリか、Databricks によって行われた修正に関連するものかを示します。billing usage table schemarecord_type に対応。例:ORIGINALRETRACTIONRESTATEMENT
Resource IDコンピュート、ストレージ、またはデータを消費または管理する、Databricks 内のさまざまなオブジェクトやエンティティに割り当てられる一意の識別子。
Operationプラットフォームで実行され、コンピュートリソースを消費し、DBU で課金される Databricks のアクションまたはタスク。
Row IDテーブル内の各使用レコード(行)の一意の識別子。billing usage table schemarecord_id に対応。

システムラベル

以下は、DoiT プラットフォームで使用できる Databricks のシステムラベルです。

  • databricks/account_id: 特定の Databricks アカウントの一意の識別子。

  • databricks/cloud: Databricks ウェアハウスが使用しているクラウドプロバイダ。例:AWSAZUREGCP

  • databricks/cluster_name: Databricks クラスタ名。

  • databricks/usage_type: DBU を消費しているワークロードタイプまたは特定機能。例:STORAGE_SPACE

  • databricks/warehouse_name: Databricks ウェアハウス名。

アイデンティティメタデータ

identity_metadata は、使用に関与したアイデンティティに関する詳細情報を提供します。

  • databricks/identity_metadata/run_as: 誰がワークロードを実行したかを記録します。これらの値は、Identity metadata reference に記載の特定のワークロードタイプでのみ設定されます。

  • databricks/identity_metadata/owned_by: これは SQL ウェアハウスの使用にのみ適用され、使用の原因となった SQL ウェアハウスの所有者であるユーザーまたはサービスプリンシパルを記録します。

  • databricks/identity_metadata/created_by: これは Databricks Apps に適用され、アプリを作成したユーザーのメールアドレスを記録します。

使用状況メタデータ

usage_metadata の値は、使用レコードに関与するワークスペースのオブジェクトやリソースに関連する文字列です。Usage metadata reference を参照してください。

  • databricks/usage_metadata/cluster_id: コンピュートクラスタインスタンスの一意の識別子。

  • databricks/usage_metadata/destination_region: データが転送されている、またはリソースがレプリケートされている AWS または Azure のリージョン。

  • databricks/usage_metadata/notebook_id: Databricks の使用に関連付けられたノートブックの一意の識別子。

  • databricks/usage_metadata/dlt_pipeline_id: 使用状況レコードに関連付けられた宣言型パイプラインの一意の識別子。

  • databricks/usage_metadata/dlt_update_id: 使用状況レコードに関連付けられたパイプライン更新の一意の識別子。

  • databricks/usage_metadata/dlt_maintenance_id: 使用状況レコードに関連付けられたパイプラインのメンテナンスタスクの一意の識別子。

  • databricks/usage_metadata/run_name: 使用状況レコードに関連付けられた Foundation Model Fine-tuning 実行のユーザー向け一意名。

  • databricks/usage_metadata/notebook_path: 使用状況に関連付けられたノートブックのワークスペースストレージパス。

  • databricks/usage_metadata/central_clean_room_id: 使用状況レコードに関連付けられた central clean room の一意の識別子。

  • databricks/usage_metadata/app_id: 使用状況レコードに関連付けられたアプリの一意の識別子。

  • databricks/usage_metadata/budget_policy_id: ワークロードに適用されたサーバーレスの予算ポリシーの一意の識別子。

  • databricks/usage_metadata/endpoint_id: API エンドポイントの一意の識別子。

  • databricks/usage_metadata/endpoint_name: Model Serving エンドポイントなど、エンドポイントに付けられた名称。

  • databricks/usage_metadata/job_id: Databricks ジョブに割り当てられた一意の識別子。

  • databricks/usage_metadata/job_name: Databricks ジョブに付けられた、ユーザーが指定する可読名。

  • databricks/usage_metadata/job_run_id: 特定の Databricks ジョブ実行に割り当てられた一意の識別子。

  • databricks/usage_metadata/metastore_id: Unity Catalog メタストアの一意の識別子。

  • databricks/usage_metadata/node_type: Databricks のクラスタノードで使用される仮想マシン(VM)インスタンスの特定のタイプ。

  • databricks/usage_metadata/source_region: データの発生元、またはリソースの初期配置先となる AWS または Azure のリージョン。

  • databricks/usage_metadata/warehouse_id: Databricks SQL ウェアハウスの一意の識別子。

Product features reference

product_features は、使用された特定の製品機能に関する情報を含むオブジェクトで、以下のキーと値のペアを含みます。

  • databricks/product_features/jobs_tier: 値は LIGHTCLASSIC、または null

  • databricks/product_features/sql_tier: 値は LIGHTCLASSIC、または null

  • databricks/product_features/dlt_tier: 値は COREPROADVANCED、または null

  • databricks/product_features/is_serverless: 値は true または false、もしくは null

  • databricks/product_features/is_photon: 値は true または false、もしくは null

  • databricks/product_features/serving_type: 値は MODELGPU_MODELFOUNDATION_MODELFEATURE、または null

  • databricks/product_features/offering_type: 値は BATCH_INFERENCE または null

  • databricks/product_features/networking_connectivity_type: 値は PUBLIC_IP および PRIVATE_IP

Extended metrics

DoiT は Databricks の Cluster CPU utilization および Cluster memory utilization メトリクスをサポートします。これらは Extended metrics に表示されます。

Databricks extended metrics

これらのメトリクスは、DBU コストを実行可能なインサイトに変換するために必要な運用上のコンテキストを提供します。例えば、クラスタで CPU またはメモリ使用率が一貫して高い場合はボトルネックを示し、ワークロードに対してクラスタのプロビジョニングが不足している可能性があります。ノードを追加するか、コードを最適化する必要があるかもしれません。

Cluster CPU utilization

Cluster CPU utilization は、クラスタの CPU がタスクを積極的に処理している時間の割合を測定します。ユーザーモード(お客様のワークロード)、システムモード(カーネル処理)、アイドル時間に分解されます。

Cluster memory utilization

Cluster memory utilization は、クラスタのノードで使用されている RAM の割合を測定します。Spark executors に割り当てられたメモリ、キャッシュされたデータ、システムプロセスに割り当てられたメモリを追跡し、使用中、空きバッファ、キャッシュ済みメモリを区別します。