Delta deployment
Applies to
Platform: Microsoft SQL Server · Snowflake · Snowflake dbt · Databricks · Databricks dbt · Fabric Lakehouse · Fabric Warehouse · Oracle
A delta deployment deploys only the changes made since the last deployment, instead of the complete database schema or data. Use it for an environment that already holds data, such as production, because biGENIUS-X itself always deploys the complete solution. A schema comparison tool generates the script with the changes, and you review it before you run it.
To deploy a changed project into Microsoft SQL Server databases that already hold data, see Redeploy and keep data in Microsoft SQL Server - Deployment.
Steps of a delta deployment
In general, a delta deployment takes these steps:
- Implement the changes in your biGENIUS-X project and generate the artifacts.
- Deploy the solution to the DEV environment, so that DEV is a clean deployment without unused objects.
- With your schema comparison tool, compare the production database with the updated DEV environment.
- With the same tool, generate a script that contains only the changes you want to deploy.
- Review the differences and resolve the issues they show.
- Run the script in the production environment.
- Add the new objects and their dependencies to the load control:
- Open the load control folder of the generated artifacts, for example
LoadControlon Microsoft SQL Server. - Check that the configuration files contain the replaced values for production.
- Deploy the files you need.
- Open the load control folder of the generated artifacts, for example
For Microsoft SQL Server, Snowflake and Databricks, these steps are described with Liquibase: Microsoft SQL Server - Delta Deployment with Liquibase, Snowflake - Delta Deployment with Liquibase and Databricks - Delta Deployment with Liquibase.
Schema comparison tools
These tools compare database schemas and can generate the delta script. The list is not complete:
- Liquibase: an open-source tool for database schema changes. It tracks, manages and automates schema changes across environments.
- OpenDBDiff: a standalone executable that needs no installation. It compares two schemas and generates a delta script.
- SQL Server Data Tools (SSDT): the Microsoft development environment for SQL Server databases, data warehouses and related artifacts. Its Schema Compare feature supports delta deployments.
- Redgate SQL Compare: a tool that compares and deploys Microsoft SQL Server databases and automates deployments.
- Oracle SQL Developer: its Database Diff feature compares and merges schema differences between Oracle databases.
- DBeaver: compares two database structures and generates reports in several formats, including DDL scripts and Liquibase change logs. It supports several technologies, including Snowflake, Redshift, Databricks and Oracle.
Example
Microsoft SQL Server - Delta Deployment with Liquibase runs these steps with Liquibase Community in Docker. Liquibase compares the DEV database with the PROD database and writes the differences of tables, indexes and views as SQL files. You review these files and run them in PROD. A Python script copies the stored procedures from DEV to PROD.
Related articles
- See also:
- Microsoft SQL Server: Delta Deployment with Liquibase, Deployment
- Snowflake: Delta Deployment with Liquibase
- Snowflake dbt: no delta deployment article available yet
- Databricks: Delta Deployment with Liquibase
- Databricks dbt: no delta deployment article available yet
- Fabric Lakehouse: no delta deployment article available yet
- Fabric Warehouse: no delta deployment article available yet
- Oracle: no delta deployment article available yet