🙆

dbtのプロジェクトを評価してくれるWhetstoneを使ってみた

2023/03/27に公開

はじめに

Whetstoneはdbt プロジェクトのメタデータとアーティファクトを分析して、プロジェクトの構造、テスト、ドキュメント、および実行の特性を強化する推奨事項を作成するサービスです。
(機械翻訳....)

特徴

  • グラフ構造、実行、テスト、および文書化のための推奨事項の生成
  • dbt プロジェクトのグラフ ビューと、結果ごとのサブグラフの視覚化
  • グラフの複雑さとテスト カバレッジ レポート
  • 複数のプロジェクトを持つアカウントのサポート

出会い

Analytics and the craft of software engineeringで、dbtコミュニティーが手掛けるプロダクトの一つにWhetstoneが紹介されていました。(dbt-osmosisも紹介されていますね)

Alexander Butler’s dbt-osmosis automates the headache of YAML config management.

Nicholas Yager’s Whetstone analyzes dbt project artifacts to recommend improvements to data modeling, testing, and documentation.

New to me, fzf-dbt from Infused Insight enables autocomplete for dbt models with a fuzzy finder.

flow state tool from my colleague Sung Won Chung dares to imagine what hot reloading could feel like for dbt models.

実装

実装と書いていますがやることは2つです。dbt run時に吐き出されるmanufest.json及びrun_results.jsonをアップロードするだけです。上記2ファイルをアップロードするとプロジェクトの評価が始まります。

出力の結果は下記になります。model.dbt_demo.company_appleテーブルに主キーのテストがないこと、ドキュメントのディスクリプションがないことが指摘されています(ご指摘の通り放置していました)。またテストのカバレッジや複雑性なども出力されています。

感想

似たような製品にdbt-project-evaluatorがあると思いますが、個人的にはそちらでよいのかなという感想を持っています。ただ手軽に試したいといった時には、Whetstoneを使ってみても良いかなと思いました。

参考

Discussion