如何设计Redis数据结构以执行类似于Redis中的数据库查询的查询?

use*_*270 5 sql redis

我有Job,JobInfo之类的表。我想执行以下查询-

“从作业J,JobInfo B中选择J.JobID,其中B.JobID = J.JobID AND BatchID = 5850 AND B.Status = 0 AND J.JobType <> 2”

我应该如何编写我的Redis数据类型,以便可以在Redis中映射此类查询?

如果我尝试将表作业的行映射到redis哈希中,例如(哈希j jobid 1状态2),类似地,再次将表JobInfo的行映射为redis哈希中(哈希jinfo jobid 1作业类型3。)

所以我的桌子可以是一组哈希。可以使用条目JobSet:jobid设置作业表,可以使用类似于JobInfoSet:jobid的条目设置JobInfo表

但是我对何时对JobSet和JobInfoSet进行SINTER感到困惑。我将如何查询该哈希以获取密钥?因为在set jobSet中的哈希内容与表JobInfoSet中的哈希内容不同(它们可能具有不同的键值对。

那么,作为SINTER的输出,我到底会得到什么?我将如何查询作为键值对的输出?

因此表将是redis哈希的集合

Ash*_*esh 2

Redis 并非旨在以 SQL 方式构建数据。除了内存中的键值存储之外,它还支持五种类型的数据结构:字符串、哈希、列表、集合和排序集。从高层次来看,这足以表明 Redis 旨在解决由于关系数据模型中的高计算而产生的性能问题。但是,如果您想在内存结构中执行 sql 查询,您可能需要查看memsql