Thousands of organizations use DevOps practices every day to deliver application changes. But what about the database? Excluding the database from your DevOps pipeline and processes risks application performance, data security and integrity. With Flyway, Redgate solves this challenge in one complete solution that sits inside your existing DevOps platform and processes. Find out the 10 reasons why organizations worldwide choose Flyway.
1. The smarter way to do database DevOps
2. Agile development meets agile deployment in one end-to-end solution
3. Author migrations in your database’s native language to reduce risk and cognitive load
4. Handle complex database changes and data moves
5. Script migrations from Java provide greater flexibility
6. Built on strong community foundations and supported by Redgate
7. Usability lowers the barrier to adoption
8. Renowned for rich product and onboarding support to suit your rollout
9. Support for a continuous improvement approach with Flyway
10. Ambitious roadmap with continual investment in Flyway
Flyway’s reputation is built on its reliability and solid support for SQL Server, PostgreSQL, Oracle and MySQL among over 30 of the most common database types. As far back as 2015, Flyway was placed in the Adopt section of the Thoughtworks Technology Radar for its low friction approach to automating database migrations. Since then, Flyway’s popularity has soared, with teams worldwide using it to level up their DevOps workflows across large teams.
Now with the introduction of self-service provisioning of production-like data for SQL Server, PostgreSQL, Oracle and MySQL, Flyway adds further friction-busting functionality to boost team collaboration and productivity. This is not just a solution for managing and deploying database changes. Flyway is a game-changing, complete end-to-end solution for the smarter way to do database DevOps.
At each stage of the DevOps workflow, Flyway supports an agile approach with collaboration, team-wide change tracking, and a fast feedback loop central to the workflow.
|Provisions realistic data for agility and reliability||Flyway enables whole-instance provisioning in seconds for agile development and testing of database changes in production-like environments. It supports team-wide analysis of code quality earlier in the cycle with team members using the same source of data. To maximize productivity, it also supports parallel development and testing workflows.|
|Speeds up the development feedback loop, with everything in version control
||Flyway connects your database to your existing VCS to ensure everything you need to maintain the referential integrity of your database is kept safe:
The object level history means you can see who made which changes, why and when, all of which supports stable, controlled releases from a known version and state.
|Accelerates test and quality processes||Using Flyway, fully automated database unit and integration tests can be run in a CI pipeline to reduce bugs and regressions. Automated DB quality checks for DB design issues and code smells also increase reliability and lower risk at deployment time. By automating pre-merge tests, checks and reviews, full shift-left testing can be achieved. At the same time, self-service provisioning makes it easier to run tests in agile test cells or parallel test runs to achieve much more in the same testing window and ensure bugs are caught earlier before they disrupt the business.|
|Brings fast feedback and control to release management||With workflow processes for UA, security and performance sign-off, agile, on-demand deployments can be enabled. This allows teams to run a fully managed pipeline, with tracking of every new feature from development through to delivery. Flyway’s built-in change report also uses market-leading database comparison technology to indicate which objects have changed and their before/after states, so you can run thorough pre-deployment checks for pending changes in addition to capturing a history of changes for auditing or reporting. Other advanced capabilities include:
Flyway treats the migration script as a first-class artifact and each migration is authored in the native language of the database you’re working with. This is a different approach to other solutions that recommend their own proprietary DSL to define and deploy migrations, such as XML.
This means that your team experiences a much lower barrier to adoption with Flyway. There’s no need to spend time and resources training team members how to master a proprietary DSL. Your team won’t need to spend additional time maintaining and ordering changes through XML, YAML, or JSON, either. Nor will they need to carry out further checks to verify that the act of translating their changes into a proprietary DSL has unintentionally modified the intended result, risking data loss. Instead, Flyway very simply uses the database’s native language from start to finish to create and manage database migrations, giving greater transparency and reducing the workload.
Flyway provides rich features and a series of in-built checkpoints to help teams manage complex database changes and data moves with greater accuracy.
We know how to do database diff comparisons
At the heart of Flyway’s management of database migrations lies Redgate’s market-leading database diff engine for SQL Server, Oracle, PostgreSQL and MySQL. In continual development since 1999, Redgate’s comparison technology has been relentlessly tested to help teams swiftly compare database schemas, schema snapshots and static data to generate deployment and undo scripts, all while ensuring that changes are deployed in the correct dependency order every time. Offering support for an unparalleled number of database objects from an intuitive UI, Flyway brings scalability, flexibility and a smooth user experience to performing database comparisons. Flyway Enterprise also gives users the ability to auto-generate database migration scripts, providing both exceptional time-savings and improved reliability.
Fine-grained controls to support team-wide development
For teams needing to consolidate changes across a large project, Flyway also offers further fine-grained controls including a range of checkpoints and reports, such as cherry pick, dry run and the auto-generation of undo scripts. And to support branch-based development for SQL Server, Oracle and PostgreSQL, on-demand database virtualization with Flyway Enterprise means teams can provision development and testing databases with realistic data sets in a matter of seconds.
For some teams, it’s a matter of preference to code in Java instead of SQL. For other teams, the requirement to deploy more complex changes regularly, such as advanced data transformations or LOBs, makes Java a good fit. Flyway’s support for both SQL and Java script migrations means your team has the flexibility to choose the optimal language for their needs.
Flyway has been refined and honed in the community since it was first created in 2010, built from the start as an automation tool that can slot easily into workflow pipelines. A team of over 100 contributors have made Flyway the popular open source database migrations tool it is today. For Flyway’s commercial editions, a large team of developers based in Cambridge, UK, are dedicated to supporting Flyway and its ambitious roadmap.
Flyway’s reputation is built on its ease of use and the speed at which teams realize time to value. Its design is geared towards simplicity, supporting a lower barrier to large-scale adoption of Flyway across organizations. It offers an intuitive UI through Flyway Desktop to support team-based approaches for managing and automating database development. Flyway also intuitively favors convention over configuration, making it easy for teams to get started and standardize their processes.
Redgate, a company whose focus has been to develop ingeniously simple tools for databases since 1999, invests continual development effort in enhancing Flyway’s usability. A dedicated design team for Flyway is focused on enhancing the user experience both for the Flyway CLI/API and for Flyway Desktop, the GUI-based way for teams to version control and deploy changes for SQL Server, Oracle, PostgreSQL and MySQL databases.
Our onboarding support comes in different forms to suit the rollout of Flyway across your organization. If you’re considering a pilot or smaller-scale rollout of Flyway Teams or Flyway Enterprise, we have a rich online hub of easy-to-search product support documentation, easy-to-follow video courses in the Redgate University, active forums and Simple-Talk articles to get you up-and-running.
Our interactive onboarding checklist for Flyway Enterprise also gives your team an online, trackable way to master Flyway and show how it can help your business succeed.
If your organization is looking at a larger-scale rollout of Flyway Enterprise, we have a team of experienced solutions engineers ready to deliver support with architecture building, training, troubleshooting, and more. Contact us to find out how we can help.
In DORA’s ‘Accelerate: State of DevOps 2022’ report, the paper finds: “Teams that recognize the need to continuously improve tend to have higher organizational performance than those who don’t.” As soon as Flyway is up-and-running, there are 3 key ways it offers teams opportunities to align their workflow for database migrations with a culture of continuous improvement:
- On-demand database provisioning of realistic data sets: The ability to provision lightweight, production-like data sets in a matter of seconds removes limits and wait times, meaning development teams can shift left testing, discover and resolve issues sooner before they hit production.
- Version control for a culture of trust and collaboration: If all your team is working with version control for database changes, team members can enjoy the confidence of working from a known state with the assurance that it’s easy to roll back to a previous version at any time.
- Continuous integration with ephemeral test data: Flyway’s self-service provisioning of ephemeral, production-like databases for CI supercharges the feedback loop. Development teams know their changes have been robustly tested against realistic data sets, meaning they can focus on isolating issues quickly and promote changes faster.
Adopting Flyway is an investment in your organization’s capacity to level up its DevOps workflow for databases. With an ambitious roadmap of features and database support ahead, Flyway has a proven track record of delivering requested functionality and identifying what organizations need in future. This year, our Flyway development teams will be adding migration support for NoSQL databases, such as MongoDB, and enhancing Snowflake support with comparison technology.
Find out more about why Flyway is the smarter way to automate database deployments across teams and technologies.
Was this article helpful?