OpenStack Nova is currently using MySQL (powered by SQLAlchemy) as its db backend. What would be the pros and cons of switching to Cassandra?
Asked
Active
Viewed 331 times
0
-
1Without knowing anything at all about the details of how they use MySQL there is no way to answer this question in any meaningful way. Please add details about queries, data model, everything you can think of. I've voted to close. – Theo Jun 18 '13 at 06:27
-
I was expecting someone familiar with the subject, which is OpenStack Nova, to answer this question. I have also clearly labelled this question. I don't think it should be closed. – Derek Chiang Jun 18 '13 at 07:02
1 Answers
0
Openstack uses MYSQL as a backend for persisting service schema and the state of various artifacts (nodes, roles, networks, security groups, etc). The transactional intensity towards the persistence store is not so "instensive", therefore NoSQL is a good option in general. Here are some pros/cons:
PROS:
- persistence store high availability out of the box
- live horizontal scalability
- better multi-tenancy, given the large schematic scope and scalability of Cassandra
- enablement for analytics: sitting on a NoSQL store it becomes more straightforward to introduce analytics functionality within openstack
CONS:
- code redesign: openstack's code is centric on relational database model. Migrating to NoSQL would require a relevant redesign of all openstack projects/codes, as well as require the introduction of indexing a model within cassandra to allow to relate data. Changes like this often require time, thinking and stability
- more complex administration/maintenance than Mysql
- potential for data conflicts: Cassandra has an eventually consistent model, although, given the not so concurrent transactional use of openstack, this should not be much of a problem at first sight
- performance, although again, as openstack is not really "transactional" and as it has its own performance issues (python based code and services), this should not be much of a problem as well.

gextra
- 8,439
- 8
- 40
- 62