Muthu
Muthu

Reputation: 2685

Horizontally scalable/replicatable database

I have a specific requirement for storing financial related transactions. This requires transaction support, high availability, fault tolerance and horizontal scalability. I am looking for an open source solution.

Now as I understand none of the free RDBMS (the likes of Postgres or MySql) provide this. I have used cassandra for a previous project which had great amount of convenience in terms of replication & sharding. Wow, I love it for its performance as well. But unfortunately there is no ACID transactions support from Cassandra because it was built with CAP theoram in mind.

Now, I am not even particular about great/blazing fast performance. I am looking for a performance little more than or equal to an RDBMS, but with replication & sharding. The reason is we are looking for putting many servers for handling the load and each instance should be capable of serving some x client at any point in time.

Can any one think of either a free(or very cost-effective sub 500 dollar) RDBMS database or No sql store with - transaction support (commit/rollback) - replication - sharding.

Currently we have ravendb in the choices list. Do you think this would fit?

PS: I've taken a look at the following links Can you recommend a database that scales horizontally? - was discussed in 2008 and very old.

Upvotes: 4

Views: 778

Answers (3)

jmarranz
jmarranz

Reputation: 6469

You can try scaling using several instances/copies of the same DB and keep them in sync with JTA which provides distributed ACID, useful for easy ACID horizontal scaling. In spite of writes are linearly expensive, reads can be distributed between nodes and usually reads are by far more frequent than writes.

This article shows an example of this approach, code is based on a specific Java ORM tool (JEPLayer) but the core principle, JTA, can be applied to different database JTA compatible tools.

Upvotes: 0

Nicholas
Nicholas

Reputation: 16066

Take a look at Volt. (The community version)

Upvotes: 0

Ayende Rahien
Ayende Rahien

Reputation: 22956

RavenDB would be a good batch. It can scale horizontally, support sharding and replication out of the box. It has ACID transactions and automatic failover.

See here for more details: http://ravendb.net/features

Upvotes: 2

Related Questions