可水平扩展/可复制的数据库

时间:2012-10-08 01:29:33

标签: transactions nosql cassandra ravendb

我对存储金融相关交易有特定要求。这需要事务支持,高可用性,容错和水平可伸缩性。我正在寻找一个开源解决方案。

现在据我所知,免费的RDBMS(Postgres或MySql之类的)都没有提供这个功能。我曾经使用cassandra作为以前的项目,它在复制方面具有很大的便利性。分片。哇,我也喜欢它的表现。但不幸的是,Cassandra没有ACID交易支持,因为它是在考虑CAP theoram的情况下构建的。

现在,我甚至没有特别关注伟大/超快的性能。我正在寻找一个比RDBMS更多或更多的性能,但是复制和放大分片。原因是我们正在寻找用于处理负载的许多服务器,并且每个实例应该能够在任何时间点为某个x客户端提供服务。

任何人都可以想到一个免费(或非常划算的子500美元)RDBMS数据库或没有sql商店      - 事务支持(提交/回滚)      - 复制      - 分片。

目前我们在选择列表中有ravendb。你认为这适合吗?

PS:     我看了下面的链接     Can you recommend a database that scales horizontally? - 在2008年进行了讨论并且非常陈旧。

4 个答案:

答案 0 :(得分:2)

RavenDB将是一个很好的批次。 它可以水平扩展,支持分片和复制开箱即用。 它具有ACID事务和自动故障转移。

请点击此处了解详情:http://ravendb.net/features

答案 1 :(得分:0)

看看Volt。 (社区版)

答案 2 :(得分:0)

您可以尝试使用同一个数据库的多个实例/副本进行扩展,并使它们与提供分布式ACID的JTA保持同步,这对于简单的ACID水平扩展非常有用。尽管写入线性昂贵,但读取可以在节点之间分配,通常读取比写入更频繁。

article显示了此方法的示例,代码基于特定的Java ORM工具(JEPLayer),但核心原则JTA可应用于不同的数据库JTA兼容工具。 / p>

答案 3 :(得分:0)

HBase 适合您的用例。它符合 CAP 标准的 Consistency and Partition Tolerance ( Consistency , Availability and Partition Tolerance)

几个突出的特点:

  1. 线性和模块化可扩展性。
  2. 严格一致的读取和写入。
  3. 自动和可配置的表分片
  4. RegionServer 之间的自动故障转移支持。

查看 architecture 以获得更好的理解。