【发布时间】:2019-12-01 02:23:43
【问题描述】:
我需要设计一个数据模型,用于存储用户个人资料信息。用户节点可以包含姓名、地址、电话作为属性。预计用户数量将大幅增加。
同时,我想存储用户在个人资料创建过程中输入的每个用户的技能和爱好。
一个用户可以输入多种技能和爱好。当然,多个用户可能共享某个爱好或技能。
我们还要求按技能或爱好过滤用户。也就是说,如果给定爱好(羽毛球),我们需要找到所有喜欢羽毛球的用户。
- 将爱好、技能作为节点来创建有意义吗?我的理解是,这会提高查询性能,但是,用户碰巧输入的不同爱好、技能的数量可能会增加数据库中的节点数。
- 将技能和爱好存储为用户节点的属性会更好吗?我的理解是,按属性搜索所有用户群会降低查询性能。
请指教。 谢谢。
【问题讨论】: