LinkedInでこちらの記事を見つけました(要ログイン)。
GUIで指定できるサーバレスSQLウェアハウスが停止するアイドル時間の最小値は5分ですが、Databricks CLIで作成すれば1分を指定できるとのこと。キャッシュなどは聞きにくくなる一方で、コストを最小化したいという用途では有効だそうです。
試してみます。
こちらのCLIを使います。
マニュアルはこちら。
ローカルマシンにCLIをインストールしておきます。
以下のjsonファイルを作成します。auto_stop_mins
を1にするのがミソです。
sql.json
{
"auto_stop_mins":1,
"cluster_size": "2X-Small",
"enable_serverless_compute": true,
"max_num_clusters": 1,
"min_num_clusters:": 1,
"name": "sqlw",
"warehouse_type": "PRO"
}
上のファイルを指定してCLIを実行します。
databricks warehouses create --json @sql.json -p "プロファイル名"
うまくいくと結果が返ってきます。
{
"auto_stop_mins":1,
"cluster_size":"2X-Small",
"creator_name":"xxxx",
"enable_photon":true,
"enable_serverless_compute":true,
"health": {
"status":"HEALTHY"
},
"id":"89ce3073b31f8c5a",
"jdbc_url":"jdbc:spark://xxxx.azuredatabricks.net:443/default;transportMode=http;ssl=1;AuthMech=3;httpPath=/sql/1.0/warehouses/89ce3073b31f8c5a;",
"max_num_clusters":1,
"min_num_clusters":1,
"name":"sqlw",
"num_active_sessions":0,
"num_clusters":1,
"odbc_params": {
"hostname":"xxxx.azuredatabricks.net",
"path":"/sql/1.0/warehouses/89ce3073b31f8c5a",
"port":443,
"protocol":"https"
},
"spot_instance_policy":"COST_OPTIMIZED",
"state":"RUNNING",
"tags": {},
"warehouse_type":"PRO"
}
非アクティブ状態が1分と表示されています。実際に1分放っておくと止まります。
用法に注意の上ご活用ください!