Python Django中反向关系的性能影响
我正在建立我的模型,我试图避免使用太多的关系。 我有以下设置:Python Django中反向关系的性能影响,python,django,orm,model,Python,Django,Orm,Model,我正在建立我的模型,我试图避免使用太多的关系。 我有以下设置: 型号:人 一些人(一小部分人)需要与其他人建立M2M关系。让我们把这种关系称为“知道”(反向关系称为“被知道”) 为了避免在人类身上设置许多领域,我制作了一个著名的人类模型 著名的人类是一个特殊的人类阶层,有一个单一的领域(人类) 他们还有一个ManyToManyField(人类)来代表“知道”的关系 我的问题是: 由于Django创造了反向关系,我假设所有人类都会与名人有反向的“已知”关系,所以仍然存在M2M关系。我的设置是否
- 型号:人
- 一些人(一小部分人)需要与其他人建立M2M关系。让我们把这种关系称为“知道”(反向关系称为“被知道”)
- 为了避免在人类身上设置许多领域,我制作了一个著名的人类模型
- 著名的人类是一个特殊的人类阶层,有一个单一的领域(人类)
- 他们还有一个ManyToManyField(人类)来代表“知道”的关系
数据集将相当大,只有少数人需要M2M关系。我主要关心的是性能。这太复杂了
拥有多对多关系没有性能开销。这由数据库中的中间表表示;“人类”表中没有实际字段。如果项目没有任何m2m成员,则不会存储任何数据。这是不必要的复杂
拥有多对多关系没有性能开销。这由数据库中的中间表表示;“人类”表中没有实际字段。如果项目没有任何m2m成员,则不会存储任何数据。谢谢。我会尝试简化所有的事情。加入操作呢?谢谢。我会尝试简化所有的事情连接操作呢?