Mongodb 在文档数组或单独的集合中存储访问IP地址

Mongodb 在文档数组或单独的集合中存储访问IP地址,mongodb,Mongodb,我收集了很多东西。此集合中的每个文档都有一个查看计数器,当以前未查看该项目的用户每次访问其页面时,该计数器都会递增 目前,我在每个项目文档中存储一个iPAddress数组,这样我就可以跟踪谁查看了它,并且只在新用户访问时增加查看计数器 但是,我担心这可能会影响性能,因为我无法在不获取IP数组的情况下检索项目文档 我预计这个数组的范围在1到5000之间 我最好使用一个单独的集合,其中包含一个项目id和数组,还是我夸大了潜在的性能风险?引用 一般来说,嵌入为读取操作提供了更好的性能,以及在单个数据库

我收集了很多东西。此集合中的每个文档都有一个查看计数器,当以前未查看该项目的用户每次访问其页面时,该计数器都会递增

目前,我在每个项目文档中存储一个iPAddress数组,这样我就可以跟踪谁查看了它,并且只在新用户访问时增加查看计数器

但是,我担心这可能会影响性能,因为我无法在不获取IP数组的情况下检索项目文档

我预计这个数组的范围在1到5000之间

我最好使用一个单独的集合,其中包含一个项目id和数组,还是我夸大了潜在的性能风险?

引用

一般来说,嵌入为读取操作提供了更好的性能,以及在单个数据库操作中请求和检索相关数据的能力。嵌入式数据模型使得在单个原子写入操作中更新相关数据成为可能

但是,在文档中嵌入相关数据可能会导致文档在创建后增长。文档增长可能会影响写入性能并导致数据碎片

由于数组大小将增加,嵌入文档不是一个好的选择。 你可能想去看电影