我必须使用产品和用户建模数据库。
产品有多个列 - 价格,重量,描述等。每个用户都有权限产品中的特定行以及这些行中的特定单元格。
为大规模快速查找建模权限的最佳方法是什么?假设我们可以拥有数百万种产品和数十万用户。一些产品细胞可以经常更换。
我想到了以下几点:
什么会带来最佳表现?
答案 0 :(得分:0)
我更喜欢像redis这样的keyvalue商店,以便更快地查找,其中键是UserId以及值,字段列表和权限。
假设我们事先知道谁是登录用户以及产品的字段列表,我们需要知道的是用户对该字段的最高权限。如果它可以存储在一个简单的查找中,它会使事情变得更好。
让我们假设一个产品有3个字段
Field3和权限如下
UserA可以读取Field1,Field2但不能读取Field3
然后查找看起来像
KEY | VALUE(字段和权限字典序列化为json)
注意:权限可以存储为按位枚举,其中上述1,2,4表示读取,编辑和删除权限。