mongodb - NoSQL数据库引擎如何选择?

标签 mongodb cassandra redis high-load nosql

我们有一个具有以下参数的数据库:

  • 30k 条记录,7mb 大小
  • 20 次插入/秒
  • 1000 次更新/秒
  • 1000 个范围选择/秒,按二级索引,每个大约 10 行
  • 至少需要一个二级索引
  • 如果 key 在 75 秒内没有更新,则需要一些机制使 key 过期(可以通过编程垃圾收集器完成,但需要额外的“last_update”索引并增加一些负载)
  • 不需要一致性
  • 不需要耐用性
  • db应该存储在内存中

目前我们使用 Redis,但它没有二级索引,而且 keys index:foo:* 太慢了。 Membase 也没有二级索引(据我所知)。 MongoDB 和 MySQL 内存引擎具有表级锁。什么引擎适合我们的用例?

最佳答案

尝试使用http://tarantool.org/ 它有二级索引并且完全在内存中。 它还使用快速异步 IProto 协议(protocol)。

事实证明,它稳定且速度极快。

关于mongodb - NoSQL数据库引擎如何选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12976327/

相关文章:

mongodb - 有没有办法在 mongodb 聚合管道中以自纪元 (Date.getTime()) 以来的毫秒数访问日期

Cassandra - HDD 与 SSD 的使用对吞吐量没有影响

git - 在我自己的服务器上部署 Meteor,但在版本控制 repo 协议(protocol)中?和 MongoHQ

java - Spring data mongo @Query 绑定(bind)日期

json - roboMongo 导出到 csv 输出显示 bson

Cassandra - 避免 nodetool 清理

cassandra - 使用 Thrift 和 php 在 Cassandra 中创建二级索引

php - 在redis中设置多个哈希

redis - ZSCAN 保证迭代期间分数发生变化的元素

redis - 这可以用于redis吗