We at Carbon Five are pleased to announce the release of ActiveColumn – an object mapping framework for Apache Cassandra. Currently at version 0.1.1, this gem is young but functional with its first major feature of data migration support.
Prior to Cassandra 0.7, keyspaces and column families had to be maintained by hand in a configuration file. But starting with version 0.7, these are managed through Cassandra’s Thrift API. ActiveColumn uses this new functionality to deliver data migrations similar to ActiveRecord.
ActiveColumn gives you several tools to help you with your Cassandra data migrations:
- A Rails generator for creating migration files
rails g active_column:migration CreateUsersColumnFamily
- Several rake tasks for creating and migrating keyspaces
rake ks:create rake ks:drop rake ks:migrate rake ks:rollback (and more)
- Some useful data management functions to use within migrations
class CreateUsersColumnFamily < ActiveColumn::Migration def self.up create_column_family :users end def self.down drop_column_family :users end end
The gem is pretty well documented on github, so take a look there for further details.
We hope that you find ActiveColumn useful in your Cassandra project. We are dedicated to keeping it under active development, so check back for further updates, give your feedback below, or jump on the project on github and help drive it forward.
Next up: timeline-based data mapping and querying!