February 25th, 2014

By 

 

Read the Weather Channel’s updated use case
 

The Weather Channel
  

“While I have years of experience using Cassandra with Thrift, my team was mostly new to it; CQL made their transition essentially painless.”

- Robbie Strickland, Software Development Manager at The Weather Channel

 

Robbie Strickland

 

 

Robbie Strickland Software Development Manager at The Weather Channel

 

 

Weather Channel

We are the number one source for weather on all platforms: TV, web, mobile, and API.  I manage a team in our digital group that provides backend services across all our platforms (around 10 billion requests per day).  Our team is also responsible for delivering scheduled and severe weather alerts.

 

Expanding Cassandra use   

We have a number of use cases for Cassandra: stat tracking, caching data mashups in our content generation system, and some other to-be-announced use cases.  We evaluated a number of platforms, but for our high write volume use cases Cassandra was the obvious choice.

While I have years of experience using Cassandra with Thrift, my team was mostly new to it; CQL made their transition essentially painless.  But where Cassandra really shines is in speed and operational simplicity, and I would say those two points were critical.

 

Cassandra Deployment

Until recently we had Cassandra clusters running in each of our 3 TWC data centers, but we have moved everything to EC. We currently deploy 15 nodes, going on 18, but that’s likely to increase dramatically over the short term,  with spinning disks.

 

Advice on getting started 

If you had a look in the past, you may have found Cassandra had a high learning curve and a fair amount of complexity.   CQL3, the native drivers, and virtual nodes have changed the game entirely, making Cassandra a much more accessible and friendly platform.  But CQL’s strong resemblance to SQL can lure an unsuspecting developer into a relational data model that will perform quite poorly.  When modeling data, I try to think of it as a set of covering indexes–where the data is written multiple ways to directly answer whatever queries I’ll need to write.  This is absolutely critical if you want to be successful using Cassandra.

History with  the community

I have been involved since the 0.5 release, so I’ve been around a while.  I used to spend all day in the IRC channel, have contributed a little to the Cassandra codebase, attended Cassandra Summit, founded the Atlanta Cassandra Users Group, spoken about and evangelized Cassandra at local functions, answered lots of Stack Overflow questions, written an early C# client library, implemented composite support for the Cassie library, and was actually the very first certified Cassandra developer.

In recent times I’ve had great support from DataStax in helping to gain traction in the community here in Atlanta.

 

Vote on Hacker News