Chapter 7. Designing Applications with Cassandra
In the previous chapters you learned how Cassandra represents data, how to create Cassandra data models, and how Cassandraâs architecture works to distribute data across a cluster so that you can access it quickly and reliably. Now itâs time to take this knowledge and start to apply it in the context of real-world application design.
Hotel Application Design
Letâs return to the hotel domain you began working with in ChapterÂ 5. Imagine that youâve been asked to develop an application that leverages the Cassandra data models you created to represent hotels, their room availability, and reservations.
How will you get from a data model to the application? After all, data models donât exist in a vacuum. There must be software applications responsible for writing and reading data from the tables that you design. While you could take many architectural approaches to developing such an application, weâll focus in this chapter on the microservice architectural style.
Cassandra and Microservice Architecture
Over the past several years, the microservice architectural style has been foundational to the discipline of cloud-native applications. As a database designed for the cloud from the ground up, Cassandra is a natural fit for cloud-native applications.
We donât intend to provide a full discussion of the benefits of a microservice architecture here, but will reference a subset of the principles introduced in Sam Newmanâs ...