Redis关键属性的组合

Redis关键属性的组合,redis,Redis,我正在尝试建立一个分析系统,在这个系统中,我们需要从产品发送的记录数计数器。记录将包含产品名称、版本、运行平台和其他相关信息 稍后,我们将需要基于各种组合创建报告,如仅按产品、特定产品/版本、特定产品/平台、仅按平台等 所以我认为像下面这样的redis键很难看,因为我们必须增加所有键的组合 prod:ABC:ver:v1:plat:macos:record //all attributes, name, version ,platform prod:ABC:record

我正在尝试建立一个分析系统,在这个系统中,我们需要从产品发送的记录数计数器。记录将包含产品名称、版本、运行平台和其他相关信息

稍后,我们将需要基于各种组合创建报告,如仅按产品、特定产品/版本、特定产品/平台、仅按平台等

所以我认为像下面这样的redis键很难看,因为我们必须增加所有键的组合

prod:ABC:ver:v1:plat:macos:record //all attributes, name, version ,platform
prod:ABC:record                   //only product name
prod:ABC:ver:v2:record            //name and version
...
有没有更好的办法来处理这个问题

我对Redis非常陌生

您可以做什么:

对于每个可能的记录信息,维护一个专用的redis集

“平台:fedora”“产品:toto”“产品:toto:v2”

创建新记录时,请将其保存在具有唯一id的特定密钥中

“记录:323456”

将此id推入此记录的所有匹配集中

“SADD平台:fedora 323456”

之后,根据您的查询,用于在集合之间进行交集

“烧结平台:fedora产品:toto”

将toto的所有用户捕获到fedora上