昨天聊了 dbt Core 在本機開發的基本操作,但和 dbt Cloud 相比起來,還是麻煩很多。
今天要來介紹一個常用的 VS Code extension: dbt Power User,能讓開發體驗更加順暢。
由 Extensions 搜尋 dbt Power User 就可以安裝
先讓 interpreter 顯示在下方狀態列,方便使用。
File -> Preferences -> Settings -> 搜尋 python interpreter
Python > Interpreter: Info Visibility 選 Always
此時回到主畫面,在右下角的 interpreter 路徑,選擇我們 DAY 23 所安裝的 venv
File -> Preferences -> Settings
搜尋 association,在 files: association 點選 Add Item,輸入
完成安裝後,就能開始使用 dbt Power User 的各項功能。
在 source yaml 可以選擇 generate model,依據 table schema 自動產生 model。
自動產生的 model:
安裝完成後,請先開啟任一 dbt model 的檔案,例如 customers.sql。
左邊有 dbt Power User 的 side bar 可以點選。
可以檢視 model tests, parent models, children models, 以及 documentation。
再來,按右鍵也可以發現多了一些 dbt 的選項。
可以按 Go to definition 切換到上游 model。
昨天提到的:執行 dbt 指令、查看 target/compiled 及 target/run,都可以從右鍵選單點選。
target/compiled 及 target/run 的檔案,會以分割視窗開在右邊。
在 model 按 ctrl + enter 可以預覽 500 筆資料,與 dbt Cloud 相同。
點 Dispatched SQL 可以查看 compiled SQL 語法。
Lineage View 和 dbt Cloud 有點不一樣。
一樣可以點選上下游 model 切換檔案,但除了 models 之外,這裡還多列了 tests。
最後,Document Editor 也是 dbt Cloud 沒有的功能。
明天的主題:用 GitHub Actions 建立排程
歡迎加入 dbt community
對 dbt 或 data 有興趣 👋?歡迎加入 dbt community 到 #local-taipei 找我們,也有實體 Meetup 請到 dbt Taipei Meetup 報名參加
我在dbt run 那些都沒有問題
但是在vscode dbt power user中的query result 會出現這個問題
ORA-00933: SQL command not properly ended
請問該怎麼解決呢 謝謝
你的SQL最後有分號 ';' 嗎?
沒有ㄟ
加上;會出現這個錯誤
ORA-00907: missing right parenthesis
原本猜說可能多了分號
如果不是的話我就沒頭緒了
如果 dbt run 沒錯誤
Compile出來的SQL也都可以跑查詢
那比較有可能是dbt power user加了筆數的限制之後才壞掉的
你可以找看看筆數限制能不能拿掉(我不確定)
再來就是我最近懷疑
修改完的語法第一次按preview不會生效
按第二次好像才正確😂
研究不出來的話看要開issue給dbt power user
或是到Slack發問
可以去dbt power user的頻道發問
也可以到 #local-taipei 請大家一起幫忙看