Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

No, not necessary at all. You can write queries and CTEs and create views in Athena/Glue by hand, if that’s what you prefer.


I mean what does DBT offer me here that makes it worthwhile?


- an established convention for project organization

- a tool to run lots of SQL queries at scale

- a tool to create and update views in the correct graph order to avoid dependency issues (e.g. removing a column from child view that parent still depends on).

- SQL codegen / templating using Jinja

- an ecosystem of packages that provide useful utility macros. E.g. every project eventually needs a calendar. Just look at that SQL statement to generate one. It’s gnarly.

- a test runner on data to ensure quality and contract adherence to avoid breakage upstream.


It offers a well organized SQL project. You have to store the scripts somewhere.

You may not need it, I find it really useful.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: