Databricksが好きでブログを書きたいけど、毎月いくらコストがかかるのか?
(追記)Data + AI Summit 2025にて発表されたDatabricks Free Editionが凄すぎるので
みなさん、もう心配無用です。
以下はDatabricks Free Editionが無い時代の話なので、なんとなくのベースの費用感にご興味のある方は読んでみてください。
Databricksをprivateで触る時の費用を調査してみる
まずDatabricksの費用はもちろんcost center等で確認できるのですが、
クラウドのAWS, Azure, GCPに対しても VM instanceの費用等が別々にかかります。
これらを合わせて事前に計算することに難しさを覚えます。
今回はそういった事前の計算ではなく、実際に使ってみてかかって費用を記録していきます。
また、私はMicrosoft大好きなのでAzureで実験していきます。
結論、何もしない時は1日182.59円
条件としては Databricksの Premium、regionは jp eastを利用しました。
期間としては4月27日から〜5月2日まで利用してみて1ドル142円〜145円を推移していました。(ボラが激しいですね。)
結論, All purpose cluster利用時10分強で+20円くらい?
まずDatabricksでの多く方の多くの基本操作は All purpose clusterになると思います。
技術検証をしたいだけかつ巨大なデータを扱う予定はないのでStandard_D3_v2 (14GB memory, 4 core CPU)を利用します。これを10分分ちょっと利用してみました。
その時の価格が以下の合算になります。
10.15 + 8.35 = 18.5円くらいになります。
あとで詳しく説明しますが、Databricksの compute resourceである clusterは、Azure上に立ち上がるVirtual Machineと、Databricksありがとう!ということでDatabricksに支払う DBUという単位の二つで管理されます。
僕の認識が間違っていなければ後者の画像がDBUに該当するはずです。
詳細は以下のリンク先からご確認ください。
ただ、これについては公式ドキュメントを参考に設計してください
まとめ
Databricksを簡単に個人で試したい時は以下の2点を抑えて利用すると良いです。
- 1日180円前後
- 一番安いclusterで1時間117円(実際の利用はもう少し安く感じた)
- ただしAzureにおいて
諸注意
上記の計算はAzureかつ、大体使うのは All purpose clusterでしょ、という勝手な決めつけによって成り立っています。
例えばSQLが Mainの usecaseの場合は、Serverless SQLが今は推奨で、size次第ですがもう少し安く済むかもしれません。(ドキュメントには¥31.429/DBU 時間と書いてありました)
あとは長い処理に限るとjob clusterを使っている方が安く済むので、その選択肢もあります。
(VS codeの Databricks Extentionでは、実際にVS Code上のnotebookを走らせる時、リモートのDatabricksに Notebookを転送し、job clusterで走らせるケースがあったので、これは意外とありうる操作だと思っています。)
また、今はServerless clusterもあります。こちらは計測していないですが、立ち上がりはまず Computeを定義する場合のAll purpose clusterよりも早く、最終的な利用時間次第では、、、もしかしたら安くなる道があるかもしれません。(¥142.856/DBU 時間と書いてあったので、長い時間使えば今のところ最安値クラスターの勝ちかもです)
また、本当に無料でやりたい時にはDatabricks Community Editionという選択肢が残っています。
ただし、本当に最小限の試し利用のための環境なので、最新の技術トレンドに触れてみる上では、選択肢から外れてしまうと思います。
ちなみに毎回Workspaceごと落として毎回Workspaceを立ち上げるというド貧乏作戦も考えたのですが、今時点においてはUnity Catalogや Serverless clusterの availableにする設定を管理者アカウントで毎回設定する羽目になるので、ちょっと面倒であります。
おまけ
Databricksの Running costと cluster立ち上げ時のcostを深く理解する
Azure Databricks を立ち上げると下記の様な画面構成でAzureに立ち上がります。
この時の「管理対象リソースグループ」を見てみましょう。
するとDatabricksの環境を作るために、実はStorage accountやNAT Gatewayなど、鍵・ストレージ・ネットワークに関わるリソースがいくつか立ち上がっているのがわかります。
これがDatabricksのRunning costになります。
実は意識しなくてもこんなふうにリソースによって成り立っており、特に1日180円と言いましたが、特にNAT Gatewayがその金額の大部分を占めています。
Clusterを立ち上げて、よりcost構造を理解する
Databricks側でClusterを立ち上げてみます。
すると、先ほどの「管理対象リソースグループ」に変化が現れます。
こんな感じで、このリソースグループの中にVMやそれに関連するリソースが一式立ち上がる様になっています。
これが上で説明したVirtual Machine等のコストになってくる訳です。
お読みいただきありがとうございました。
Databricksはやはり個人的に好きな環境なので、お財布に気をつけながら引き続き触っていきたいと思います。
Discussion