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
880
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
VSCodeでのDatabricks開発もお勧めしたい/I would also recommend Databricks development with VSCode.
Kazuki Abe
April 09, 2024
Other Decks in Programming
See All in Programming
AIエージェントで 変わるAndroid開発環境
takahirom
2
760
テーブルをDELETEした
yuzneri
0
130
全PRの83%がAIレビューだけでマージできるようになった開発組織はその後どうなったか
athug
0
1k
Prismを使った型安全な暗号化_関数型まつり2026
_fhhmm
0
160
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
2
290
2年かけて Deno に DOMMatrix を実装した話 / How I implemented DOMMatrix in Deno over two years
petamoriken
0
190
使いながら育てる Claude Code — 開発フローの1コマンド化 × 繰り返し指摘の自動仕組み化
shiki_kakaku
0
1.5k
PHP初心者セッション2026 〜生成AIでは見えない裏側を知る:今だからLAMPを通して仕組みを学ぶ〜
kashioka
0
750
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3.3k
なぜ関数型プログラミングで「型」と「証明」が語られるのか #fp_matsuri
kajitack
3
1.1k
型も通る、synthも通る、それでも危ない 〜AIのCDKの権限とコストを機械で検証する〜 / It Passes Type Checks, It Passes Synth Checks, but It’s Still Risky — Automatically Verifying Permissions and Costs in AI’s CDK —
seike460
PRO
1
510
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
160
Featured
See All Featured
Marketing Yourself as an Engineer | Alaka | Gurzu
gurzu
0
270
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.9k
What the history of the web can teach us about the future of AI
inesmontani
PRO
1
650
Test your architecture with Archunit
thirion
1
2.3k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
Prompt Engineering for Job Search
mfonobong
0
390
The Illustrated Children's Guide to Kubernetes
chrisshort
51
53k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
201
75k
The Curious Case for Waylosing
cassininazir
1
440
Exploring anti-patterns in Rails
aemeredith
3
450
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
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