We have been lacking a Cassandra schema change manage tool. I have been hoping to see more
projects in this area, but they have not materialized. There are several projects in this
space like Liquibase[1], FlyWay[2], and Rails Migrations[3]. The problem with these
projects is that they are all designed specifically for relational databases. When we
first started using Cassandra in RHQ, I started working on a patch for Liquibase to add
support for Cassandra.I discovered that it was not going to be a good fit. It would have
required substantial changes to the core Liquibase code base.
Over the past week I have been working on a small library, Cassalog[4], that provides
schema change management specifically for Cassandra. I decided to put it in its own repo
instead of a hawkular repo for now since it is not hawkular specific. I started adding
some docs and examples and would appreciate any feedback. I would like to see whether or
not this could be a good option for managing C* schema changes in hawkular.
[1]
http://www.liquibase.org/ <
http://www.liquibase.org/>
[2]
http://flywaydb.org/ <
http://flywaydb.org/>
[3]
http://edgeguides.rubyonrails.org/active_record_migrations.html
<
http://edgeguides.rubyonrails.org/active_record_migrations.html>
[4]
https://github.com/jsanda/cassalog <
https://github.com/jsanda/cassalog>
- John