Quantcast
Channel: DivConq MFT » Thrift
Viewing all articles
Browse latest Browse all 3

What’s missing from Cassandra and Thrift?

$
0
0

If you’ve spent any time at all with Cassandra you’ve gotten to know the Thrift interface that comes with that innovative NoSQL database.

As you may know, Thrift is a framework that allows you to serialize, transport and unpack data objects from a variety of different development environments, including C++, Java, Python, PHP, Perl, C# and Cocoa.  Like Cassandra, it was developed by Facebook and then donated to Apache.  Though not explicitly a part of Thrift, JSON parallels many of these same concepts, including strongly typed object serialization across the same development environments (and then some).

Facebook has made it quite far in this world with these technologies, but there are also some additional technologies DivConq would like to see embedded in Cassandra to increase its acceptance in the overall development community.

First up are native web services.   Today, you need to have a Thrift client on the remote end of a Cassandra to parse and send binary data streams.   You’re also encouraged to manipulate individual full-blown objects, when maybe what you really want to do is hit a range  in the back-end database.

Second are sort orders.  The key sorts (on row keys and supercolumns) in Cassandra are currently limited to a single type.  That works great if your keys are really all of the same type, but less well if you have a few numbers or other types you want to mix in there.  (Several other NoSQL databases support sorts with mixed types; I know DivConq co-creator Andy White misses these too.)

Finally, there is the missing concept of “stored procedures” which are quite common in relational databases.  The lack of these capabilities force common and reusable data selection and manipulation operations back up into the application layer.  This in turn forces the applications to get involved in “operations replication” in a distributed environment…and that’s really Cassandra’s job.

So…what to do?  Stay tuned to DivConq – we’ll be addressing all three of these challenges soon.


Viewing all articles
Browse latest Browse all 3

Latest Images

Trending Articles





Latest Images