
Omniとdbtリポジトリを連携してdbt上のdescriptionをOmniに反映させてみた
この記事は公開されてから1年以上経過しています。情報が古い可能性がありますので、ご注意ください。
さがらです。
Omniとdbtリポジトリを連携してdbt上のdescriptionをOmniに反映させてみたので、その内容を本記事でまとめてみます。
※Omni自体については、下記のブログが参考になると思います。
試す内容
下記のドキュメントに沿って、dbtのリポジトリと連携してみます。
使用するConnectionは、下記のブログで用いたSnowflakeのConnectionを使用します。このブログで使用したSnowflakeのデータベース・スキーマ・テーブルはdbtを用いて構成しているので、ちょうど本記事の検証内容にマッチするためです。
Connectionのdbt連携設定
まず、dbtと連携をしたいConnectionの設定画面で、dbtタブを押します。
すると、下図のような画面が出てくるので、各種情報を入力し、右下のSaveを押します。
- Git SSH URL:連携対象のGitHubのリポジトリのSSHのURL
- Git Branch:
mainなど、本番管渠として利用している - Target Schema:dbtのProduction Environmentとしている環境の出力先のスキーマ名を入力
- dbt Cloudの場合、Deployment Environments > Production Prod > Settings > Deployment Credentials > Schemaで確認可能です。

同じ画面の下部にPublic Keyが表示されるため、これをコピーして、対象のリポジトリのDeploy keys新しいDeploy keyを追加して貼り付けます。Allow write accessも忘れずにチェックして、Add keyを押します。


Deploy keyの追加後、Omniの画面に戻りTest Connectionを押します。押した結果下図のように表示されて問題なければ、Saveを押します。

dbtのdescriptionの連携
対象のConnectionのModel開発画面に移動し、上部のModelからRefresh schemaを押します。

すると、下図のようにdbtで定義していたdescriptionが反映されました!日本語のdescriptionであっても問題なく反映されています。(ちなみに、ドキュメントによると2024年8月18日時点はこの更新は自動化はされていないようです。)

また、各viewの最下部には紐づくdbt ModelのSQLの内容も反映されています。

ちなみに、dbtから引用したDescriptionはフィールドピッカーでも表示可能です。

最後に
Omniとdbtリポジトリを連携してdbt上のdescriptionをOmniに反映させてみたので、その内容を本記事でまとめてみました。
dbtを使用しているユーザーは多いと思いますので、dbtのdescriptionがそのまま活用できるのは嬉しいですね!







