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 recommend Databricks development with VSCode.
Search
Kazuki Abe
April 09, 2024
Programming
0
270
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
Java 22 Overview
kishida
1
190
Elm Form Validation
bkuhlmann
0
510
新宿ダンジョンを可視化してみた
satoshi7190
2
270
障害対応を起点としたもっといい開発と運用のサイクル作りのためにできること / Hatena Enginner Seminar #29
polamjag
0
270
PHPはいつから死んでいるかの調査
chiroruxx
1
400
Go製Webアプリケーションのエラーとの向き合い方大全、あるいはやっぱりスタックトレース欲しいやん / Kyoto.go #50
utgwkk
6
1.5k
"config" ってなんだ? / What is "config"?
okashoi
0
240
DMMプラットフォームがTiDB Cloudを採用した背景
pospome
9
4.1k
Node.js v22 で変わること
yosuke_furukawa
PRO
10
3.7k
try! Swift Tokyo 初参加報告LT
hinakko2
0
220
0→1と1→10の狭間で Javaという技術選定を振り返る/Reflecting on the Decision to Choose Java Between Scaling from 0 to 1 and 1 to 10
jaguar_imo
2
390
Git Rebase
bkuhlmann
11
1.6k
Featured
See All Featured
Learning to Love Humans: Emotional Interface Design
aarron
267
39k
The Illustrated Children's Guide to Kubernetes
chrisshort
32
46k
ParisWeb 2013: Learning to Love: Crash Course in Emotional UX Design
dotmariusz
104
6.6k
How GitHub (no longer) Works
holman
305
140k
For a Future-Friendly Web
brad_frost
172
9k
Testing 201, or: Great Expectations
jmmastey
29
6.4k
The Power of CSS Pseudo Elements
geoffreycrofte
61
5k
Fireside Chat
paigeccino
22
2.6k
Fashionably flexible responsive web design (full day workshop)
malarkey
398
65k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
358
22k
Code Reviewing Like a Champion
maltzj
515
39k
The Straight Up "How To Draw Better" Workshop
denniskardys
228
130k
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