Hi,
Well… For now I would like to make the following question: which are the restrictions that prevent two or more Sequoia Controllers to share a backend? I’m asking this because, as far as we can see now, the best way to adapt the Sequoia to our platform would be deploying multiple controllers connected to the same set of backends. This happens because, in a parallel execution, there will be multiple clients connected to the DB cluster via the controllers, and we would like to avoid the duplication of requests on the network. Let me explain this better:

- if we have a single controller, then the requests generated by the app instances would “travel” from the driver to the controller and from the controller to the backends, duplicating the usage of the network,

- on the other hand, if each app instance has its own controller running locally, and if all controllers share the same set of backends, then the requests would be sent to the local controller and forwarded to the backends, making the network busy only once.

Does it sound reasonable?

Yes, you want to have one controller per site with the local databases attached to it. The controllers on each site will communicate and synchronize through the group communication.

Another thing that we couldn’t understand so far is: why does the Sequoia use group communication among the controllers if they don’t manage the same set of backends? What’s to be synchronized?

It is not because the controllers are not sharing the same physical backends that they are not replicating the same data. Imagine a client connected to controller1 that has db1 and db2. When client issues a write, controller1 updates db1 and db2. If controller1 does not tell controller2 about the write, controller2's backends will not be able to be synchronized and perform the write as well.

The document http://c-jdbc.objectweb.org/current/doc/C-JDBC_horizontal_scalability.pdf is a little bit old but explains the fundamental issues behind sharing physical backends. You can also check Figure 8 in http://c-jdbc.objectweb.org/current/doc/C-JDBC_Flexible_Database_Clustering_Middleware.pdf that should have a configuration close to what you want to achieve.

Thanks for your interest in Sequoia,
Emmanuel

--
Emmanuel Cecchet
Chief Scientific Officer, Continuent

Blog: http://emanux.blogspot.com/
Open source: http://www.continuent.org
Corporate: http://www.continuent.com
Skype: emmanuel_cecchet
Cell: +33 687 342 685


_______________________________________________
Sequoia mailing list
[EMAIL PROTECTED]
https://forge.continuent.org/mailman/listinfo/sequoia

Reply via email to