Redis和数据完整性

时间:2013-02-04 07:54:14

标签: redis integrity

我对REDIS DB有一些问题:

  • 如何确保数据完整性?
  • 有方法确保完整性吗?
  • Redis主键吗?或替代方案
  • 外键?
  • 参考诚信?
  • 如何实施ACID属性?

非常感谢您提供反馈意见

最好的问候    - SB -

2 个答案:

答案 0 :(得分:17)

Redis是类固醇的键/值存储,而不是关系数据库。

如何确保数据完整性? 有方法可以确保完整性吗?

Redis支持不同的持久性选项,从“非安全但非常高效”到“安全但不是非常高效”。请在以下网址查看更多信息:

Redis还支持主从复制机制,以便在完全节点发生故障时保护数据。

单个Redis实例始终提供数据一致性(在CAP定理的意义上,不是ACID意义上的。)

Redis主键吗?或其他选择

Redis是一个键/值存储。所有物品都有钥匙。没有主键或辅助键的概念。

外键? 参考完整性?

这些是关系概念。 Redis不是关系数据库。 外键没有任何意义(Redis没有表格概念)。 Redis不维护参照完整性,必须由客户端应用程序强制执行。

如何实施ACID属性?

由于Redis不是事务性数据库,因此不应该实现它们。 Redis没有回滚机制。但是,就ACID属性而言:

  • 使用服务器端Lua脚本
  • 的一组命令可以保证原子性和一致性
  • 始终在命令级别保证隔离,并且还可以使用MULTI / EXEC块或Lua脚本保证一组命令
  • 激活AOF(使用系统fsync)时可以保证耐用性

答案 1 :(得分:0)

Redis Graph 是你需要更好的数据完整性和关系的模块