键/值分布式数据库缓存的二进制数据(Key/Value distributed database f

2019-10-18 14:33发布

我找了分布式KV数据库缓存小二进制对象,像TTL影像。 大小限制是不是一个问题,因为我打算无论如何要拆分的每个对象,以减少等待时间。 我需要C#和Java驱动程序,并在不久的将来,我还需要C ++驱动程序。 喜欢的CouchDB和Redis的数据库似乎是基于文件。 蒙戈支持二进制数据和有据可查的,但它是持久的,我不知道它是在吞吐量方面可扩展性,卡桑德拉也是持久的,我不知道关于C ++ / C#驱动程序的质量+需要,因为缺失的不断修复。

塞是商业,也基于文档的。 也许用了Riak内存或性LevelDB后端(任何与它的C ++客户端的工作?)

Answer 1:

塞将是你,是因为以下原因而完美的解决方案:

供应你所有的用例

  1. 主要基于价值。
  2. 开放时间从3.0版本的来源。 早些时候高达2节点塞式集群是开源和3级或更多的节点群集支付。
  3. 在缓存模式下使用,没有持久性。
  4. 支持LRU和TTL。
  5. 可以保存二进制数据。

原因选择塞式

  1. 吞吐量 :比蒙戈/ Couchbase或任何其他的NoSQL解决方案更好。 看到这个http://www.aerospike.com/benchmark/ 。 亲眼看到它很好地工作超过300K读取TPS和100K的同时写TPS。
  2. 自动和高效的数据分片,数据重新平衡和使用RIPEMD160数据分布。
  3. 高可用性系统故障转移和/或网络分区的情况下。


Answer 2:

Couchbase (不CouchDB的)是你的最佳选择。 高度可扩展,易于理解,使用和规模。 这是一个从memcached中,通过地图还提供了辅助索引/缩小和很多新的东西即将演变出KV文件数据库。 您仍然可以使用memcached协议/库或Couchbase SDK的加快速度。



Answer 3:

你看枢纽的GemFire枢纽的GemFire是一个分布式数据管理平台,提供动态可扩展性,高性能和类似数据库的持久性。

关键的GemFire也有C ++,C#和Java客户端驱动程序



文章来源: Key/Value distributed database for caching binary data