Migration between databases?

Potential customer looking to migrate from a Postgres backend to Snowflake. Is this a tool that dbt could be used for? Or is that like using a really nice wrench to drive a nail?

Hi @PHoran! dbt can certainly be helpful in migrations like this, yes. More info:

  • dbt is not helpful in actually moving data from one database to another. You’ll need to handle that however makes the most sense. If you’re using off-the-shelf ingestion tooling this isn’t hard, though…you just set up a new destination.
  • dbt is excellent as a mechanism to transition over your data transformation workloads. If you previously had a bunch of transformation jobs running inside of Postgres, porting them to dbt can often significantly shrink the migration pathway, as dbt understands how to write the appropriate DML for the database. You’ll still have to make some changes to how your SQL syntax works…date math is syntactically different, for example. But using dbt as a shim to migrate this code saves a significant amount of work. And of course, you can use dbt’s testing capabilities to ensure that your end results are consistent after the migration has completed.

Happy to answer followup questions if I can be helpful!