Databricks Python SDKの基本操作

Databricks と Python SDK

Avi Steinberg

Senior Software Engineer

Databricks Clusters API

Databricks クラスターとは?

  • クラウドのコンピュートリソースと構成のセット
  • データ集約型ワークロードの実行に使用
  • 複数ユーザーによる共同分析に利用

使用例:

  • 本番ETLパイプライン
  • ストリーミング分析

Databricks クラスター画像

Databricks SDK の Clusters API を使用して、クラスターの作成・起動・編集・一覧表示・削除が可能です

Databricks と Python SDK

クラスターの一覧表示

Databricks ワークスペース上のクラスターを一覧表示する例を見ていきましょう

from databricks.sdk import WorkspaceClient
w = WorkspaceClient()

clusters = w.clusters.list() for cluster in clusters: print(f"ClusterId={cluster.cluster_id}")
ClusterId=0113-13328-woj98c32
1 1. https://databricks-sdk-py.readthedocs.io/en/stable/workspace/compute/clusters.html#databricks.sdk.service.compute.ClustersExt.list
Databricks と Python SDK

Databricks Jobs API

Databricks ジョブとは?

  • スケーラブルなリソースを持つクラスター上でノートブックのコードを実行
  • 単一タスク、または複雑な依存関係を持つ大規模なマルチタスクワークフロー
  • CRON構文を使用した定期スケジュール実行に対応

Jobs API を使用して、ジョブの作成・編集・削除が可能です

1 https://docs.databricks.com/api/workspace/jobs
Databricks と Python SDK

ジョブの一覧表示

.list() メソッドを使用して、認証済みユーザーのワークスペース内のジョブを一覧表示します

from databricks.sdk import WorkspaceClient
w = WorkspaceClient()
jobs = w.jobs.list()
for job in jobs:
    print(f"JobId={job.job_id}")
JobId=888763141802192
JobId=37050453972815
JobId=681550316180975
JobId=629994089852037
1 1. https://databricks-sdk-py.readthedocs.io/en/stable/workspace/jobs/jobs.html
Databricks と Python SDK

Databricks ジョブ ダッシュボード

ワークスペースのリソースは https://<workspace-deployment-name>.cloud.databricks.com でオンライン確認できます

Databricks ワークスペース ダッシュボード(UI)

Databricks と Python SDK

Databricks ノートブック

Databricks ノートブックでPythonコードを実行する

Databricks ノートブックのスクリーンショット

Databricks と Python SDK

実際に試してみましょう!

Databricks と Python SDK

Preparing Video For Download...