现在有两种方案一种是, 把用户的活动放在user collection里,缺点是可能会放很多东西 另一种方案是, 新建一张activities collection,用userId做index 但其实我并不需要同时看多个用户的activities
对于你的需求,建议另加一个collection,采用userId做关联,尽管mongodb优先建议做内嵌处理。分析你的activities既然是用来做用户的活动时间轴,那基本上是每个用户都应该有的。另外,根据你的描述activities会放很多东西,尽管目前mongodb对于单个doucment扩展其大小到16M,但是内容太大的话仍会超出其限制,而且对查询等也会有一定影响。对于此种情况,mongodb也会建议做冗余连接,来模拟SQL的连接查询。
欢迎来到随意问技术百科, 这是一个面向专业开发者的IT问答网站,提供途径助开发者查找IT技术方案,解决程序bug和网站运维难题等。 温馨提示:本网站禁止用户发布与IT技术无关的、粗浅的、毫无意义的或者违法国家法规的等不合理内容,谢谢支持。