DBT : Explain DBTs clean-targets


In a DBT (Data Build Tool) project, the clean-targets configuration in the dbt_project.yml file is used to specify the files or directories that should be removed when running the dbt clean command. The clean-targets configuration tells DBT which files and directories to delete when cleaning the target directory.

When you run dbt clean, DBT removes any previously built files from the target directory so that you can build the project from scratch. Here are some key points to keep in mind when working with clean-targets:

  1. Syntax: In the dbt_project.yml file, clean-targets is specified as a list of file paths or directory paths. For example, the following configuration specifies two directories and a file to be cleaned:
  - "target/*"
  - "dbt_modules/*"
  - "my_project_logs.log"
  1. Placement: The clean-targets configuration should be placed in the dbt_project.yml file, which is located in the root directory of your DBT project.
  2. File types: The clean-targets configuration can be used to specify any type of file or directory that should be cleaned. Some examples of files and directories that you may want to clean include compiled Python files, logs, and temporary files.
  3. Wildcards: The * character can be used as a wildcard in file paths to match multiple files or directories. For example, target/* matches all files and directories in the target directory.
  4. Dependencies: The clean-targets configuration can include files or directories that have dependencies on other parts of your DBT project. When you run dbt clean, DBT will remove all files and directories specified in clean-targets, including any dependencies.
  5. Safety precautions: Before running dbt clean, it is important to ensure that you have a backup of any data or files that you want to keep. The clean-targets configuration can cause files and directories to be deleted, so it is important to use caution when running this command.

In summary, the clean-targets configuration in the dbt_project.yml file is an important component of a DBT project. It allows you to specify which files and directories should be removed when cleaning the target directory, ensuring that you can build the project from scratch. By following the guidelines for syntax, placement, and safety precautions, you can ensure that your clean-targets configuration works as expected and improves your DBT project workflow.

Get more useful articles on dbt

  1. ,
Author: user

Leave a Reply