Databricks Free Editionを使ってDatabricks Appsにアプリをデプロイする
この記事でやること
Databricks Free Editionがリリースされ、無料でDatabricks環境を試せるようになりました。
この記事では、Databricks Appsを使ってWebアプリケーションをデプロイする手順を、自作のDatabricks料金試算アプリを使いながら解説します。
記事の概要
- 対象読者: Databricks Appsのデプロイ手順を確認したい方
- 前提知識: 基本的なWeb操作(コマンドライン操作は不要)
- 費用: 無料(Databricks Free Edition使用)
ステップ1: 環境準備
1-1. Databricks Free Editionアカウント作成
以下の手順で、Databricksの無料アカウントを作成します。
- ブラウザで Databricks Free Edition にアクセス
- 希望のサインアップ方法を選択
- アカウント名を入力、ロケーションを選択
- Databricksのワークスペースにログインできることを確認
Databricks Free Editionの詳細や制限については公式ドキュメントをご確認ください
ステップ2: Databricks料金試算アプリのソース取得
2-1. ソースのダウンロード
Databricks Appsにデプロイするアプリのサンプルとして、Databricks料金試算アプリを使用します。
今回はGUIを使ってデプロイしていくので、GitHubからソースコードをダウンロードします。
(デプロイしてみたいアプリがある場合はそちらをご利用ください)
- Databricks料金試算アプリのGitHubページにアクセス
- [Code] ボタンをクリック
- [Download ZIP] を選択してソースコードをダウンロード
2-2. (参考)アプリの機能確認
デプロイするアプリは、AWSでDatabricksを利用する場合のコストを試算するためのものとなります。(正確な価格情報はAWS、Databricksの公式情報をご参照ください)
🔧 主な機能
- コンピュートクラスター料金計算: インスタンスタイプ別の時間単価・月額計算
- SQL Warehouse料金計算: サイズ別の料金見積もり
- 料金比較: 複数のインスタンスタイプの比較
- データ出力: CSV/Excel形式でのエクスポート
ステップ3: Databricks Appsデプロイ
アプリをDatabricks Appsにデプロイします。
3-1. 新規アプリの作成
-
左側のサイドバーから「+ 新規」または「+ Create」をクリックし、「App(アプリ)」を選択します
-
「カスタムアプリを作成」を選択します
(ChatbotやData appなどのテンプレートも利用できますが、今回はカスタムアプリを使用します) -
新しいアプリを作成画面で、アプリ名を入力します。今回はサンプルアプリの名前に合わせて「databricks-cost-calculator」と入力してください
-
「アプリを作成」ボタンをクリックします
-
アプリ用のコンピュートが立ち上がります(数分かかると思います)
3-2. ファイルのアップロードとデプロイ
ここまでの作業でアプリのコンピュートが立ち上がりましたが、アプリファイルはまだデプロイされていません。
デプロイに必要なファイルをアップロードしていきます。
-
Databricksのワークスペース画面で、ホームフォルダを開きます
-
画面右上の「共有」ボタンの隣にある ⋮(縦向き三点リーダ)メニューから「インポート」を選択しましょう
-
ステップ2-1でダウンロードしたZIPファイルをアップロードしましょう
-
ワークスペースにフォルダが追加されたことを確認しましょう
-
サイドバーの「Compute(コンピュート)」をクリックし、「Apps」タブに移動しましょう
-
アプリ名「databricks-cost-calculator」をクリックし、アプリの概要画面が表示されたら、右上の「デプロイ」ボタンをクリックしましょう
-
デプロイするフォルダ選択画面で、アップロードしたフォルダの配下にある「src」フォルダを選択し、「選択」→「Deploy」と進めましょう
⚠️ 重要: プロジェクトのルートフォルダではなく、必ず「src」フォルダを指定してください。ルートフォルダを指定するとデプロイ時にエラーになります。
-
デプロイが完了すると、アプリのステータスが「実行中」になります
ステップ4. アプリの動作確認
デプロイが成功したら、アプリにアクセスしてみましょう。
-
アプリ詳細画面に表示されるURLをクリックすると、ブラウザでアプリを開いて動作を確認できます
-
Databricks料金計算アプリが表示されます
アプリの使用例
実際にアプリを使って料金を計算してみましょう!
-
画面左側のペインで、想定するワークロードを入力しましょう
-
例:開発者1名が1日8時間、All Purposeコンピュートをr6idn.xlarge(4 vCPU, 32GiB)をExecutor2台(合計3台のクラスタ)で月20日動かす場合
→ 月間利用費用:約 $546 と算出されます
-
ワークロードは複数追加することができ、以下のような組み合わせも可能です:
- Jobクラスタでのバッチ処理
- DLT(Delta Live Tables)利用時のワークロード
- SQL Warehouse のServerless利用
補足: Serverlessの利用を推奨したいところですが、計算のしやすさを考慮してSQL Warehouse以外はクラシックコンピュートを前提にしています。
5. Databricks CLIを使える方向け
ここからは Databricks CLIを使ったデプロイの案内です。(少し雑)
- 事前準備
- Databricks CLIを使ってDatabricks料金計算アプリをDatabricks Appsにデプロイします
- Free EditionでもPATが発行可能なので、CLIで設定しておきます
-
アプリの作成:Databricks Appsのアプリを新規作成するところは、3-1. 新規アプリの作成 と同じです
-
プロジェクトをクローン: Databricks料金計算アプリのソースをクローンします
# プロジェクトをクローン git clone https://github.com/yoshitaka903/databricks-cost-calculator.git cd databricks-cost-calculator # srcディレクトリに移動(デプロイ対象) cd src
-
ワークスペースにファイルをアップロード
# ワークスペースにディレクトリをインポート # YOUR_EMAILの部分は適宜読み替える databricks workspace import-dir . /Workspace/Users/YOUR_EMAIL/databricks-cost-calculator --overwrite
-
デプロイ
# 初回デプロイ(アプリ作成とデプロイを同時に実行) databricks apps deploy databricks-cost-calculator --source-code-path /Workspace/Users/YOUR_EMAIL/databricks-cost-calculator # 後続のデプロイ(更新時はファイルアップロード後に実行) databricks workspace import-dir . /Workspace/Users/YOUR_EMAIL/databricks-cost-calculator --overwrite databricks apps deploy databricks-cost-calculator
-
デプロイが成功した際の出力例(一部):
"status": { "message":"App started successfully", "state":"SUCCEEDED" },
-
デプロイ状況の確認方法
# アプリ一覧表示 databricks apps list # アプリの状態確認 databricks apps get databricks-cost-calculator
完了!
Free Editionの登場により、誰でも気軽にDatabricksを体験できるようになりました。ぜひ他の機能も試してみてください!
参考リンク
おまけ. Databricks料金試算アプリをローカルで動作確認する
ローカル環境で今回使ったDatabricks料金試算アプリを動かしたい場合。
# 依存関係をインストール
pip install -r requirements.txt
# Streamlitアプリを起動
streamlit run app.py
ブラウザで http://localhost:8501
にアクセス:
- インスタンス選択機能が動作する
- 料金計算が正しく表示される
- サイドバーの設定が正常に動作する
を確認してください
Discussion