database - 何时使用 Redis?什么时候去塔兰图尔?
问题描述
我不想做详细的比较。我也不想定义“什么是最好或最快的”内存数据库。
它们都很相似,所以我想大致了解一下关键差异。
那么它们是什么?
解决方案
让我成为为上述问题提供解决方案的人,我做了一些研究。从我的角度来看,这些是了解它们的最关键的事情。
全面的
- 两者都是极快的内存技术
- 开源和企业版
- 将所有数据存储在内存中
- 提供 10 000 或更高的 RPS
- 持久性:它们都将数据快照到磁盘
- 支持异步复制
- Redis 是键值存储
- Tarantool 支持 key-value,也支持文档和关系模型
为什么 Redis 更受欢迎
- 更容易上手
- 互联网上的更多信息(例如在这里查看问题的数量)
- 整体上更简单的技术
- 更多人熟悉它
为什么 Tarantool 更可取
- 支持二级索引
- 支持索引迭代
- 有一个用于集群管理的 UI
- 默认情况下有一个应用服务器
结论
- Redis 是一个很棒的缓存解决方案。不建议将其用作主存储
- Tarantool 是一个多游行数据库。可用作主存储
- Redis 的进入门槛较低
- Tarantool 作为解决方案的上限更高(关系模型、分布式 NoSQL 存储、队列)
推荐阅读
- firebase - 如何防止大字符串被更新到 Firebase 数据库
- python - 连续过度放松
- python - regex - 在 Python 3 中使用正则表达式制作分词器
- c# - 在 c# 中睡眠一个方法而不是整个程序
- java - 通过java中的setter和getter访问内部方法中的值
- spring-boot - 我在 Spring Boot 中使用 @Autowired 接口服务返回 null
- arduino - Pi to Feather 蓝牙低功耗通信
- python - 合并排序 1 个数组,对于每个更改,它必须影响另一个列表
- ios - iOS 作为商家从 Apple Pay 接收付款
- c++ - 如何在不更改所有代码以使用 this-> 的情况下避免旧模板重库中的“未声明”错误?