Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
订购mongoDB集合最有效的方法是什么_Mongodb_Performance - Fatal编程技术网

订购mongoDB集合最有效的方法是什么

订购mongoDB集合最有效的方法是什么,mongodb,performance,Mongodb,Performance,我正在使用MongoDB存储web服务器流量数据。 在每次访问页面时,我希望存储多种数据类型,例如: HTTP请求信息 客户分析信息 等等 这些数据类型是从不同域的不同端点接收的,有时并非全部 对于每个传入的数据,我希望存储原始数据,以便最终可以查询特定用户/域上的不同数据类型 我目前的数据库结构是: 收藏: 数据类型1 数据类型2 ... (每种数据类型有更多集合) 域(集中所有引用相关数据类型的域) 用户(集中所有引用相关数据类型的用户) 文档: 数据类型1:{u id:ABCD,数

我正在使用MongoDB存储web服务器流量数据。 在每次访问页面时,我希望存储多种数据类型,例如:

  • HTTP请求信息
  • 客户分析信息
  • 等等
这些数据类型是从不同域的不同端点接收的,有时并非全部

对于每个传入的数据,我希望存储原始数据,以便最终可以查询特定用户/域上的不同数据类型

我目前的数据库结构是:

收藏:

  • 数据类型1
  • 数据类型2 ... (每种数据类型有更多集合)
  • 域(集中所有引用相关数据类型的域)
  • 用户(集中所有引用相关数据类型的用户)
文档:

数据类型1:{u id:ABCD,数据:原始数据(包括用户和域)}

数据类型2:{u id:XYZ,数据:原始数据(包括用户和域)}

域:{域:xxx.xx,数据类型1:[ABCD,(其他相关)],数据类型2:[XYZ,(其他相关)]}

用户:{用户:qwerty,数据类型1:[(用户数据类型1相关文档\u id)],数据类型2:[(用户数据类型2相关文档\u id)]]

我尝试了不同的方法,我担心的是,对于每个用户或域,引用数组的数据类型可能会无限增长,特别是在处理数百万个请求时

这个订单有效吗?你能提出更好的结构吗?
谢谢

在这篇博文中找到了更好的结构指南: