Wednesday, January 2, 2013

Native support for collections in Cassandra 1.2! (no more JSON blobs?)


In case you haven't seen it yet,  Apache released Cassandra 1.2:


I'm stoked.   Presently we write maps/lists as text blobs in Cassandra using JSON.  This has obvious limitations.  In order to add something to the map/list, we need to read the list, append the data then write the data back to C*.  Read before write is not good, especially in a large distributed system. Two clients could read at the same time, append, and the second write would effectively remove the element added by the first.  Not good.

Although I think the Thrift support is a bit clunky (via JSON), CQL3 supports native operations on collections. 

Now, we just need to figure out how to migrate all of our data. =)
-brian

No comments: