-
Notifications
You must be signed in to change notification settings - Fork 19
Description
Describe the feature
Volatile tables are a great asset to Teradata since they can be an efficient way to break queries into intermediate steps while still benefiting from things like indices and statistics that subqueries do not have. We would love to be able to define a table as volatile with indices and stat collections in dbt SQL models and then allow the system to drop them once the session ends.
Describe alternatives you've considered
Creating separate tables with indices on them. We cannot drop them through DBT, however, when the work is complete and they clutter up the database.
Additional context
Volatile tables will afford significant performance enhancements when working with large numbers of rows.
Who will this benefit?
What kind of use case will this feature be useful for? Please be specific and provide examples, this will help us prioritize properly.
This will be useful for anyone leveraging dbt with Teradata. One of our current barriers to adoption is we can create procedures that allow for volatile tables and are very performant. This dbt implementation, however, allows us to achieve the same result but it takes much longer to process or it leaves intermediate tables behind that clutter up the database and need to be deleted outside of dbt.
Are you interested in contributing this feature?
Let us know if you want to write some code, and how we can help.