dbt CloudのNew IDEで追加された3つの新機能を試してみた #dbt

2022.10.31

この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。

さがらです。

先日(10月28日頃)、dbt CloudのNew IDEがGAとなりました!

New IDEではUIがより使いやすくなったり、IDEの立ち上げ速度が向上するなど、ユーザー体験がより良いものとなっています。以前、私もBeta版を試してブログを書いていますので、参考にしてみてください。

そして、今回のGAに伴い、IDEに関する新しい3つの機能がプレビューとして提供されていましたので、その3つの機能について本記事でまとめてみます。

Code formatter

まず1つ目として、Code formatterの機能が追加されました。

SQLのformatterは様々なものがありますが、sqlfmtというformatterが使用されているようです。

使い方はとても簡単!IDEのエディター欄の右上にFormatというボタンがあるのでこれを押してみます。

すると、あっという間に開いている.sqlファイルの内容がフォーマットされました!フォーマット前はインデントされておらず読みにくいSQL文でしたが、適切にインデントされて読みやすい形になりました。

Diff view

次に2つ目として、コミット前にどのようにコードを書き換えたがわかるDiff viewが追加されました。

IDEの左側にChangesという欄が追加されており、コミット前に何かしら変更があったファイルの一覧が出てきます。この中からDiff viewを見たいファイルをクリックすると、下図のようにDiff viewを見ることが出来ます。

Autocomplete

最後に3つ目として、汎用的なJinjaを用いたrefsourcemacroなどのコードブロックを自動で記述してくれるAutocompleteの機能が追加されました。

例えば、refを書きたいとします。

IDE上で__refと入力すると、下図のように候補が出てきます。

この上で、候補の中から__refをクリックしたりEnterキーで指定すると、{{ ref('model_name') }}に自動で書き換わりました!

これは、sourceにも対応しています。__soと入力するだけでsourceの候補が出てきますので、それを指定すると、{{ source('source_name', 'object_name') }}に自動で置き換わります。

macroを作りたい場合には、このようにコードブロックを自動で生成してくれます。

最後に

dbt CloudのNew IDEで追加された3つの新機能を試してみました。

こちらの新機能は現在プレビューとのことですが、11月16日頃にGAになるとこちらの記事には書いてありました。(New IDEのGAも2週間ほど予定より遅れていたので、こちらも遅れるかもしれませんが…)

いずれも更にIDEを使いやすくする機能だと思いますので、GAとなるのが楽しみですね!