2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

1 分で自動停止するDatabricks SQL Serverless Warehouse を Databricks SDK により作成・変更する方法

Posted at

概要

Databricks SQL Serverless Warehouseを効率的に管理するために、Databricks SDKを使用して1分で自動停止するよう設定する方法をご紹介します。この@taka_yayoi(Takaaki Yayoi) さんの次の記事にて、1 分で自動停止するDatabricks SQL Serverless Warehouse を作成できることを知りました。Databricks SDK により、新規で作成する方法と既存の Databricks SQL Serverless Warehouse の設定を変更する方法を検証しました。

検証コードと実行結果

事前準備

まず、databricks-sdkライブラリを最新版に更新します。以下のコードを実行して、Python環境を再起動します。

%pip install databricks-sdk --upgrade -q
dbutils.library.restartPython()

image.png

1. 新規で1 分で自動停止するDatabricks SQL Serverless Warehouse を作成する方法

新規に1分で自動停止する Warehouse を作成するには、auto_stop_minsパラメータに1を設定します。以下のコードを実行して Warehouse を作成します。

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

created = w.warehouses.create(
    name=f"qiita-wh-01",
    cluster_size="2X-Small",
    max_num_clusters=1,
    auto_stop_mins=1,
    enable_serverless_compute=True,
).result()

image.png

Databricks Workspace にて SQL warehouses の設定を確認するとAuto Stopが 1 分となっていることを確認できました。

image.png

2. 既存の Databricks SQL Serverless Warehouse の設定を変更する方法

設定の変更を検証するために、auto_stop_mins10に設定した Databricks SQL Serverless Warehouse を作成します。

from databricks.sdk import WorkspaceClient

w = WorkspaceClient()

created = w.warehouses.create(
    name=f"qiita-wh-02",
    cluster_size="2X-Small",
    max_num_clusters=1,
    auto_stop_mins=10,
    enable_serverless_compute=True,
).result()

image.png

設定を変更する場合には Databricks SQL Serverless Warehouse の ID が必要となるため取得します。

warehouses = w.warehouses.list()

# 特定のSQLウェアハウスの名称からIDを検索
warehouse_name = "qiita-wh-02"
warehouse_id = None
for warehouse in warehouses:
    if warehouse.name == warehouse_name:
        warehouse_id = warehouse.id
        break

# IDを表示
if warehouse_id:
    print(f"'ID: {warehouse_id}")
else:
    print(f"ID が見つかりませんでした。")

image.png

Databricks SQL Serverless Warehouse の自動停止時間を 1 分に設定します。

# 設定値を更新
w.warehouses.edit(
    warehouse_id,
    auto_stop_mins=1,
)

image.png

Databricks Workspace にて SQL warehouses の設定を確認するとAuto Stopが 1 分となっていることを確認できました。

image.png

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?