84669인 학습
152542인 학습
20005인 학습
5487인 학습
7821인 학습
359900인 학습
3350인 학습
180660인 학습
48569인 학습
18603인 학습
40936인 학습
1549인 학습
1183인 학습
32909인 학습
现在有两种方案一种是, 把用户的活动放在user collection里,缺点是可能会放很多东西 另一种方案是, 新建一张activities collection,用userId做index 但其实我并不需要同时看多个用户的activities
对于你的需求,建议另加一个collection,采用userId做关联,尽管mongodb优先建议做内嵌处理。分析你的activities既然是用来做用户的活动时间轴,那基本上是每个用户都应该有的。另外,根据你的描述activities会放很多东西,尽管目前mongodb对于单个doucment扩展其大小到16M,但是内容太大的话仍会超出其限制,而且对查询等也会有一定影响。对于此种情况,mongodb也会建议做冗余连接,来模拟SQL的连接查询。
对于你的需求,建议另加一个collection,采用userId做关联,尽管mongodb优先建议做内嵌处理。分析你的activities既然是用来做用户的活动时间轴,那基本上是每个用户都应该有的。另外,根据你的描述activities会放很多东西,尽管目前mongodb对于单个doucment扩展其大小到16M,但是内容太大的话仍会超出其限制,而且对查询等也会有一定影响。对于此种情况,mongodb也会建议做冗余连接,来模拟SQL的连接查询。