Plug and Play Database Clustering

It never ceases to amaze me what you can get for free these days (whether that’s free as in beer doilies or free as in freedom).

Sequoia is an open-source offering that, so its creators claim, can give your application clustering, load balancing and failover support without any modification of your existing applications or databases. The main requirement is that all database accesses are performed through JDBC.

Simply swap in the Sequoia JDBC driver, and point the server at your choice of databases (MySQL, PostgreSQL, Oracle, DB2 etc). The product gives you performance scalability, fault tolerance and high availability. It also offers additional features such as monitoring, logging, and SQL request caching.

It’s a Java implementation that makes use of the JMX (Java Management eXtensions) API. So you can use your favorite administration and monitoring tool – as long as it supports JMX, of course. Rather a nice JMX console which is seeing lots of active development currently is MC4J.

Although Sequoia is open-source, its creators Continuent, Inc. provide paid-for support, training and consulting, in addition to their database high availability and load balancing software.

About the Author

Matt Stephens is a senior architect, programmer and project leader based in Central London. He co-wrote Agile Development with ICONIX Process, Extreme Programming Refactored, and Use Case Driven Object Modeling with UML - Theory and Practice.