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
370
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
CSC307 Lecture 08
javiergs
PRO
0
330
AWSでゲームサーバーを運用! Amazon GameLiftのお話
iriikeita
0
200
Rust.Nagoya #1
codemountains
0
170
CSC307 Lecture 10
javiergs
PRO
0
310
Android開発者のための Kotlin Multiplatform入門
ntaro
0
190
君たちはどうコードをレビューする (される) か / 大吉祥寺.pm
utgwkk
15
8.5k
さきがけから振り返るアーキテクチャ刷新 / Reflecting on the Architectural Renewal from the Vanguard
nrslib
2
770
最古の関数型言語「Lisp」ことはじめ / lisp_in_kamiyama
uhooi
1
190
Prompt FlowによるLLMアプリケーション開発
yuto2000
1
1k
AWS CDKにおける「再利用性」を考える / aws-cdk-reusability
gotok365
6
1.3k
コード生成を伴うLLMエージェント - 2024.07.18 Tokyo AI
smiyawaki0820
11
4.1k
企業向け生成AIアプリの 開発から得られた知見
takaakikakei
0
310
Featured
See All Featured
Visualization
eitanlees
139
14k
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
36
9.1k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
23
1.9k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
16
1.6k
BBQ
matthewcrist
82
9k
StorybookのUI Testing Handbookを読んだ
zakiyama
15
4.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
25
6.7k
The Cost Of JavaScript in 2023
addyosmani
31
4.7k
Debugging Ruby Performance
tmm1
71
11k
Stop Working from a Prison Cell
hatefulcrawdad
266
20k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
662
120k
Designing for Performance
lara
604
67k
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