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
280
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
“Seeing Like a Programmer”—Resiliency, Limits, and Moral Hazards in Software Engineering (LambdaConf 2024)
chriskrycho
0
410
Apache Hive 4 on Treasure Data
ryukobayashi
1
470
Productivity is Messing Around and Having Fun
hollycummins
1
160
Amazon Aurora Serverless v2が意外と高かった話と、AWS Database Migration Serviceの話
satoshi256kbyte
1
100
AWS CDKコントリビュートTIPS / aws-cdk-contribution-tips
gotok365
4
610
ソースコードを美しくたもつために ~コードレビューの認知限界を突破し、年間400リリースを達成する~
kotauchisunsun
1
150
Ruby on Fails - effective error handling with Rails conventions
talyssonoc
0
260
Runtime Objects in Rust
mitsuhiko
0
170
Implementing Design Systems in Swift
seyfoyun
2
520
CREってこういうこと? 体験入社 - 提案資料 - / what-is-cre-trial-employment
shinden
1
610
Kotlin Multiplatform at Stable and Beyond (Android Makers 2024)
zsmb
0
600
TypeScript 関数型スタイルでバックエンド開発のリアル
naoya
49
16k
Featured
See All Featured
Understanding Cognitive Biases in Performance Measurement
bluesmoon
12
1.1k
Building Flexible Design Systems
yeseniaperezcruz
320
37k
Stop Working from a Prison Cell
hatefulcrawdad
266
19k
Clear Off the Table
cherdarchuk
85
310k
Happy Clients
brianwarren
92
6.4k
How GitHub (no longer) Works
holman
305
140k
Atom: Resistance is Futile
akmur
260
25k
Mobile First: as difficult as doing things right
swwweet
217
8.6k
Bootstrapping a Software Product
garrettdimon
PRO
302
110k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
117
18k
GitHub's CSS Performance
jonrohan
1025
450k
Facilitating Awesome Meetings
lara
43
5.6k
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