Jan Macháček CTO at Cake Solutions
"Our clients do require very high availability and elasticity. This would be very difficult to achieve without Apache Cassandra..."
Jan Macháček CTO at Cake Solutions
Using the very latest technologies, Cake Solutions helps organisations take innovative and disruptive ideas and develop them into reactive software solutions. Cake’s success is underpinned by our unique One Team® approach that allows for standalone projects or close collaboration with the clients’ technology teams. Cake provides mentors to guide the entire organisation through modern software engineering, continually transferring skills and knowledge to client teams in the process. This enables Cake to deliver not just software but to transform the way organisations think about and execute software delivery.


Get moving with Cassandra and Spark

From the users’ perspective, Muvr is an exercise analysis system, with two fundamental principles: “just works” and “no interaction”. The users can go about their exercise programmes, and Muvr performs “real-time” classification of their exercises (movement); the classification requries no further interaction from the users. Ultimately, the users are able to focus on the exercise, and completely forget about Muvr.

Muvr is a CQRS/ES cluster, which uses Apache Cassandra (2.1.7) as its shared journal. It writes all events to Cassandra, and then the analysis component reads the journal entries in Apache Spark. We perform deeper analysis and model improvements in Spark.

Availability and elasticity

Cassandra was a natural choice for reliable distributed journal; we did not even look at any other choices.  It would be difficult to implement elastic CQRS/ES system without a reliable distributed journal, and Apache Cassandra fits that extremely well.

At this stage of the project (early beta with a few friendly users), we have the freedom not to worry about true elasticity and availability. Nevertheless, similar projects that we have implemented on behalf of our clients do require very high availability and elasticity. This would be very difficult to achieve without Apache Cassandra, regardless of the details of the workload on other nodes.

CRUD is dead, storage is cheap and elasticity is easy. Take advantage of the performance and elasticity of Cassandra, combine that with the availability of very cheap storage, and leave the world of destructive updates in the past. This is the foundation of not only elastic data stores, but also elastic (responsive, resilient and event-driven) systems.

We’ll hopefully talk more about how we use and scale Apache Cassandra at this year’s Scala eXchange showing the details of our CI & CD pipeline. Cassandra is great!

Read more about how Cake Solutions uses Cassandra with Mesos, and more on Cake Solution’s dev blog.

Follow @twitter