4

我正在寻找关于用一些文档存储替代品(例如 NoSQL MongoDB)替换现有数据网格(即 Oracle Coherence)的意见。我正在考虑最重要的利弊,并提出:

NoSQL

优点:

  1. 没有额外的数据库
  2. 无需 ORM 映射
  3. 虽然通过ID查询可以达到最好的查询效率,但其他查询可以通过map/reduce查询来满足

缺点:

  1. 更新多个集合甚至同一集合中的多行时,很难实现数据一致性
  2. 响应时间较慢?(我怀疑 Coherence 响应时间可能会更好)
  3. 读操作可以返回旧数据

数据网格

优点

  1. 使用数据网格,保持数据一致似乎更容易,例如数据网格变成了 SOR(记录系统)
  2. 随着数据网格变为 SOR,所有数据都应始终在网格中可用
  3. 远程执行器

缺点

  1. 额外的数据库意味着额外的开销和系统/应用程序要求
  2. 拥有大量数据和分片,任何类型的查询都可能需要大量时间
4

4 回答 4

2

Couchbase Server 是 Oracle Coherence 的一个很好的替代品,特别是对于企业级应用程序。Orbitz 是一个很好的例子,其中大量的 Coherence 节点被 Couchbase 的 70 个节点所取代。

您可以在此处阅读有关 Coherence 替换的更多信息:http: //gigaom.com/cloud/balancing-oracle-and-open-source-at-orbitz/

Orbitz 演示文稿中有关 Couchbase 的幻灯片也可在此处获得:http ://www.slideshare.net/Couchbase/t1-s6-oww-usescouchbase

优点:

  • 使用复制和故障转移的节点的高可用性(避免冷缓存场景)
  • 亚毫秒级延迟(基于 memcached 的内置对象级缓存)
  • 高读/写吞吐量(锁定粒度非常低)(http://www.cisco.com/en/US/prod/collat ​​eral/switches/ps9441/ps9670/white_paper_c11-708169.pdf )
  • 文档/项目级别的强一致性
  • 每个文件/项目的 TTL / 到期

缺点:

于 2012-10-30T07:08:33.097 回答
0

您已经详细说明了利弊……正如 iwein 所说,这取决于……

现有的关系系统强制执行哪些查询?

我们知道,nosql db 中的分区比 realtional db 中的分区更容易......所以如果你切换到 mongo,你可以以更便宜、更快捷的方式扩展你的系统性能......

如果人们现在对您的 Oracle 系统感到满意。不要碰它:)

于 2012-10-20T16:23:26.703 回答
0

它可以,但笔和纸系统也可以。

问题是,它会是一个可以接受的替代品吗?这完全取决于情况。在某些情况下,NoSQL 解决方案比关系解决方案更快、更具可扩展性,但在某些情况下,必须对运行时间更长的事务和关系约束提供某种支持。

这取决于。

于 2012-10-20T16:17:08.053 回答
0

是的——NoSQL 可以替代它。但很大程度上取决于你想要做什么。如果您只需要一个简单的文档存储和基于键的简单查找,那么 NoSQL 是不费吹灰之力的。

如果您需要一个具有付费支持和功能(例如自定义聚合、入口处理器等)的企业级解决方案。也许 Coherence 就是您想要的。

我见过人们在 Coherence 之上构建定制的 NoSQL 解决方案——这是一件非常昂贵的事情。

于 2012-10-20T16:48:50.793 回答