我正在为一个新项目设计数据库模型,由于我来自 SQL 世界,所以我不确定哪种方法更好。
这是我的主要关系:
- 用户组织的活动。(例如:约翰正在组织一场足球比赛)
- 参加活动的用户。(例如:安娜和罗布参加了约翰组织的足球比赛)
- 活动属于类别/ActivityType(约翰的游戏属于足球类别)
- 用户在完成活动后对其他用户进行评分(例如:John 对 Anna 在足球比赛中的表现给予 5 星评分,Rob 对他们的表现给予 5 星评分)。
伪代码将是这样的:
用户
- _ID
- 全名
- 电子邮件
- 密码
- loc ({ 经度: X, 纬度: Y })
- 活动(活动数组)
- 平均率
- 创建时间
- 更新时间
速度
- _ID
- 时间戳
- 活动(活动)
- 评分者_用户(用户)
- 评级用户(用户)
- 创建时间
- 更新时间
活动类型
活动
- _ID
- 类型(活动类型)
- 组织者(用户)
- loc ({ 经度: X, 纬度: Y })
- 地址
- 时间
- 最大参与者数
- 描述
- 参与者(用户数组)
- 请求(用户数组)
- 创建时间
- 更新时间
我应该从这种标准化方法转向嵌入式数据模型吗?