I have worked with both products and Flyway is more lightweight and flexible from my point of view. Rollback is a good point for Liquibase, but it slightly dangerous to rely on this feature. How do you imagine the rollback in case of column delete? Much better to include a database backup as a standard step of an application update. Versioning is not an issue in both products.
Do you have one single database system, or do you need to support several, like e.g. Postgres and MariaDB? Because to me, that’s the major difference: while in Flyway, you write the migrations in plain SQL (in your databases dialect), Liquibase abstracts from that using a XML/YAML language, which it can translate to a dozen different SQL dialects at runtime. However, if you know that you’ll always have that one single database, learning that abstraction is pretty pointless.

