redis - aerospike 与其他键值 nosql 数据库有何不同?

标签 redis key-value-store aerospike

<分区>

Aerospike是一个键值、内存中、可操作的 NoSQL 数据库,具有支持复杂对象且易于扩展的 ACID 属性。但是我已经使用了完全相同的东西。

Redis也是一个键值对,内存中(但持久保存到磁盘)NoSQL 数据库。它还支持不同的复杂对象。但与 Aerospike 相比,Redis 使用时间更长,已经拥有一个活跃的社区,并在其中开发了很多项目。

那么aerospike和redis等其他no-sql key-value数据库有什么区别。有没有哪个地方更适合放置气钉。

附言我正在寻找在现实世界中至少使用过这些数据库中的一个(最好是两者)并且没有真实生活经验(不是从官方网站复制粘贴)的人的答案。

最佳答案

如果非要用一个词来回答,那就是“性能”。 Aerospike 的性能比现有的任何 clustered-nosql 解决方案都要好得多。每个节点的更高性能意味着更小的集群,即更低的 TCO(总拥有成本)和维护。 Aerospike 执行自动集群、自动分片、自动重新平衡(当集群状态发生变化时),其中大部分需要在其他数据库中手动执行。

我说“集群”是因为我不想在该组中混合使用 redis(尽管 redis 集群处于测试阶段)。 Aerospike 和 Redis 的纯内存性能不相上下。但是 Redis 希望在应用程序层处理很多事情,例如分片、请求重定向等。尽管 Redis 有一种持久化方式(快照或 AOF),但它有自己的问题,因为它的设计更像是一个插件。 Aerospike 是 native 开发的,坚持不懈。 redis的集群还涉及到设置master slave等,大家可以看看这个talk比较和对比 Redis 与 Aerospike。

关于redis - aerospike 与其他键值 nosql 数据库有何不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24482337/

相关文章:

Redis 重启时 Node.js + Socket.io 和 Redis Store 问题

arrays - BinaryJedis 从不返回期望值

key-value-store - 我可以使用 clickhouse 作为键值存储吗?

ruby-on-rails - 在 Rails 同一个应用程序中使用不同的数据存储?

python - Aerospike docker 连接被拒绝使用 docker 服务名

java - 如何从 aerospike Java cilent 获取列表然后在单个事务中修改列表类型的 bin

javascript - Aerospike 使用 JavaScript 连接

Redis哨兵身份验证

node.js - 如何在 Docker 容器中运行数据库服务?

java - 使用 Spring Boot 和 Consul 处理 Leader 实例