# More Complex Environment Structure

**URL:** <https://discourse.getdbt.com/t/more-complex-environment-structure/5199>\
**Category:** In-Depth Discussions\
**Tags:** project-structure\
**Created:** [October 28, 2022, 1:39pm UTC](https://discourse.getdbt.com/t/more-complex-environment-structure/5199 "2022-10-28T13:39:20Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![austintidmore](https://avatars.discourse-cdn.com/v4/letter/a/a4c791/32.png) [@austintidmore](https://discourse.getdbt.com/u/austintidmore)\
**Post date:** [October 28, 2022, 1:39pm UTC](https://discourse.getdbt.com/t/more-complex-environment-structure/5199/1 "2022-10-28T13:39:20Z")

</div>

New DBT user here… Our Snowflake environment is structured such that we have three environments for our development lifecycle: Dev, Integration and Production, but we _also_ have another facet to our environment which is “consumer” and “core” data. We intend to maintain consumer (i.e. customer) data in a separate database and schema structure to minimize unauthorized access. So effectively we have 6 Snowflake databases: DEV/INT/PROD x CONSUMER/CORE.

Would it be a better practice in DBT to have 6 targets in the profiles.yml file, or to override any of the database/schema information at the model level? At this point I’m thinking we have consumer and core as subdirectories of our model folder in our project.

Looking forward to the discussion - thanks!

---

<div class="post-metadata">

**Author:** ![gomezn](https://avatars.discourse-cdn.com/v4/letter/g/b5e925/32.png) [@gomezn](https://discourse.getdbt.com/u/gomezn)\
**Post date:** [October 29, 2022, 11:14am UTC](https://discourse.getdbt.com/t/more-complex-environment-structure/5199/2 "2022-10-29T11:14:55Z")

</div>

I would think of profiles.yml as Authenticator only and structure models folder so that each folder is a db then override db in dbt\_project.yml.

That beings said, why not have a single db with multiple schemas? You can control permissions the same way at the schema level.
