Maintenance of the logical consistency in Cassandra – Pablo Suárez-Ótero

Contrary to the relational databases, in NoSQL databases like Cassandra is very common that duplicity of data in different tables happens. This is because usually tables are query driven (designed based on queries) and there are not any relationships between them, in order to increase the performance of the queries. Therefore, if the data is not updated on a proper way, inconsistencies in the stored information could appear. It is quite easy to introduce defaults that cause inconsistencies of the data in Cassandra, especially during the evolution of a system where new tables are created, being these ones hard to detect using conventional techniques of dynamic testing. The developer is the one responsible for the maintenance of this consistency incorporating and updating the proper procedures. In this session, a preventive approach to these problems is introduced, establishing the procedures required to ensure the quality of data from the point of view of their consistency and thus helping the developer. These procedures include a static analysis using the conceptual model, the queries and the logical model of the application. They also include the determination and execution of the operations that guarantee the consistency of the information.