比较datomic的自托管分布式存储选项?

时间:2016-11-16 05:58:14

标签: cassandra couchbase riak infinispan datomic

根据我对Datomic的list of supported storage systems的了解,以下内容似乎都可以自托管,并且分发

  • 卡桑德拉
  • 了Riak
  • Couchbase
  • Infinispan内存集群

对于那些不了解其中大部分内容的人来说,只有在使用Datomic时才会有什么不同。 Datomic并不太关心存储系统的各自功能,因为它们仅用作“笨蛋”。键/值存储。

所以对我来说重要的是

  • 易于安装
  • 易于维护
  • 性能

特别是在"易于安装"可能存在显着差异,因为根据Datomic页面,其中一些需要一个ZooKeeper集群,一个至少需要3个节点才能运行等。

即使答案未涵盖所提及的所有存储选项,也不胜感激。

2 个答案:

答案 0 :(得分:1)

我同意August的建议。

我还想补充一点,如果自托管不是一项硬性要求,那么使用DynamoDB在AWS上设置Datomic通常是最快的路径。

-M

答案 1 :(得分:0)

如果您正在寻找易于设置,那么普通的SQL数据库可能是一个不错的选择。 Datomic可以使用最流行的SQL数据库作为存储(使用JVM中的JDBC),因此可以使用MySQL,PostgreSQL等。它们广泛使用,通常易于在大多数设置上安装和运行。

表现明智,我没有太多的经验可以分享,只是我的想法。在我看来,主要的瓶颈可能是Datomic本身,因为它是在一个线程中将事务写入存储。我无法想象使用5服务器Riak集群会比SQL服务器快得多。在读取方面,Datomic支持在存储和对等体之间进行memcached,因此读取和写入的差异很小。

自托管存储用于开发/测试/暂存设置。在内部,它直接在交易者中使用SQL接口和H2。 H2被认为是稳定的,但是当服务器意外重启时,我的测试/暂存中H2数据库已经损坏,因此我不推荐它用于生产。