Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
VSCodeでのDatabricks開発もお勧めしたい/I would also recomm...
Search
Kazuki Abe
April 09, 2024
Programming
0
640
VSCodeでのDatabricks開発もお勧めしたい/I would also recommend Databricks development with VSCode.
Kazuki Abe
April 09, 2024
Tweet
Share
Other Decks in Programming
See All in Programming
DynamoDBは怖くない!〜テーブル設計の勘所とテスト戦略〜
hyamazaki
0
190
Strands Agents で実現する名刺解析アーキテクチャ
omiya0555
1
110
Quality Gates in the Age of Agentic Coding
helmedeiros
PRO
1
120
あのころの iPod を どうにか再生させたい
orumin
2
1.7k
SQLアンチパターン第2版 データベースプログラミングで陥りがちな失敗とその対策 / Intro to SQL Antipatterns 2nd
twada
PRO
38
11k
コーディングは技術者(エンジニア)の嗜みでして / Learning the System Development Mindset from Rock Lady
mackey0225
2
220
Flutterと Vibe Coding で個人開発!
hyshu
1
230
DataformでPythonする / dataform-de-python
snhryt
0
150
一人でAIプロダクトを作るための工夫 〜技術選定・開発プロセス編〜 / I want AI to work harder
rkaga
6
1k
大規模FlutterプロジェクトのCI実行時間を約8割削減した話
teamlab
PRO
0
450
SwiftでMCPサーバーを作ろう!
giginet
PRO
2
230
MCPで実現できる、Webサービス利用体験について
syumai
7
2.4k
Featured
See All Featured
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
229
22k
Statistics for Hackers
jakevdp
799
220k
BBQ
matthewcrist
89
9.8k
A better future with KSS
kneath
239
17k
Writing Fast Ruby
sferik
628
62k
Build your cross-platform service in a week with App Engine
jlugia
231
18k
Build The Right Thing And Hit Your Dates
maggiecrowley
37
2.8k
Rails Girls Zürich Keynote
gr2m
95
14k
Music & Morning Musume
bryan
46
6.7k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
110
19k
How to train your dragon (web standard)
notwaldorf
96
6.2k
The Language of Interfaces
destraynor
158
25k
Transcript
VSCodeでのDatabricks開発も お勧めしたい 阿部 和貴 株式会社エーピーコミュニケーションズ 1
アジェンダ 2 • 自己紹介 • ローカルでDatabricks開発をするには • VSCodeでの開発に必要な前準備 • 本発表で実施すること
• 今回使用するDatabricks Asset Bundles用ファイルの説明 • デモ • まとめ
自己紹介 • エーピーコミュニケーションズ( 2023/1〜)のデータエンジニア • 主にDatabricksを活用したデータ分析基盤の導入支援や構築 • Databricks認定資格: ◦ Data
Engineer Associate ◦ Data Engineer Professional • 社内の技術ブログも書いてます https://techblog.ap-com.co.jp/archive/author/Kazumain • 趣味 ◦ サイクリング、コーヒー、読書 3 阿部 和貴(Kazuki Abe)
Databricksをローカルで開発したい!! 4
ローカルでDatabricks開発をするには 5 Workspace上での開発: ワークフローの設定は UI上で実施 notebook ローカル開発環境での開発: コード管理したワークフローを同期・実行 ワークフロー構成 Workflows
notebook 設定画面 ローカル開発環境 Workspace Workflows 同期した notebook Workspace デプロイ Cluster リモート実行
VSCodeでの開発に必要な前準備 6 VSCodeにDatabricksの拡張機能(プレビュー中含む)をインストール後 ワークスペースとの認証を行う • VSCodeで開発したコードをワークスペースと同期 • Workspace内のnotebookをローカルから実行 • ワークフロー(Job、DLT)も実行可能
• コードのデバッグ ワークスペースとの認証方法は、以下ドキュメントを参照 Visual Studio Code 用の Databricks 拡張機能の認証のセットアップ • VSCodeで開発したSQLクエリをワークスペースと同期 • ローカルからSQLクエリを実行できる • クラスターの他にSQL Warehouseが別途必要 ワークスペースとの認証方法は、以下ドキュメントを参照 Databricks Driver for SQLTools for Visual Studio Code
本発表で実施すること 7 VSCodeにおいてDLT(Delta Live Tables)パイプラインを開発し Databricks Workspaceにデプロイ・実行 Databricks Assistantの代わりに Copilot
Chatを利用 DLT Pipelines Databricks Asset Bundles Workspace バンドル VSCode開発環境 notebook DLT設定 ・・・ ・・・
今回使用するDatabricks Asset Bundlesのファイル説明 8 事前にデフォルトのバンドルテンプレートを作成済み。作成方法は以下ドキュメントを参照 https://docs.databricks.com/ja/dev-tools/bundles/work-tasks.html DLTでの処理内容を記述 databricks.yml (バンドル) .src/DLT-Pipeline.ipynb
DLTの設定情報を定義 (今回はdatabricks.ymlに直接記述したため省略) .resources/my_project_pipeline.yml • ワークスペースのホスト名 • DLT設定 (JSONからYAMLに変換後入力) バンドル設定ファイルに定義されたワークフローをデプロイする
ここからデモです デモ手順 • VSCodeからWorkspaceにDLTをデプロイ • デプロイ後、VSCodeからDLTを実行(時間がかかるため動画紹介) • 結果確認 9
10
11
12
13
まとめ • VSCodeの拡張機能を用いることで、ローカルでのDatabricks開発が可能 • Databricks Asset BundlesによってローカルからDLTのデプロイ・実行ができる • (プレビュー中だが)VSCodeの拡張機能を用いて上記操作はUI上で可能 •
Copilot Chatも十分利用できそう(上手くサジェストしないときは、エージェントを workspaceに指定すれば改善した) 14