技术开发 频道

对比主流NoSQL数据库特性与应用场景

  CouchDB

  双向复制

  连续或ad-hoc

  冲突检测

  主主复制(master-master replication)

  多版本并发控制,写操作不会阻塞读取

  通用的技术文档

  只崩溃设计Crash-only

  需要经常压缩

  视图:嵌入式map/reduce

  格式化视图:lists & shows

  服务器端文档验证可行

  身份验证可行

  通过_changes实时更新

  附件处理

  CouchApps(独立js应用)

  包括jQuery库

  非常好的适用:对于数据变化不太频繁的业务,运行有预先定义的查询。此外对于版本控制有高要求的业务同样适用。

  应用场景:CRM、CMS系统。主主复制是非常有趣的功能特性,它令多站点部署变得更加容易。

  Riak

  分布式与复制的权衡

  post-commit 和pre-commit hooks

  安全性验证

  内置的全文检索

  Javascript或Erlang Map/reduce

  开源 与 企业 两个版本

  非常好的适用:如果你想要Cassandra或Dynamo类似的功能,但不想太复杂。如果你需要非常好的单点扩展性、可用性和容错功能可以使用Riak。

  应用场景:销售点数据采集。工厂控制系统。需要零停机时间的场景。

  Redis

  内存数据库

  2.0版本之后可以部署到硬盘上

  主从复制

  简单的Key-Value

  操作符较为复杂,如ZREVRANGEBYSCORE

  INCR & co (有利于速率限制和统计)

  有集合(union/diff/inter)

  有列表(a queue; blocking pop)

  有散列(多字段对象)

  NoSQL中唯一处理交易的数据库

0
相关文章