node.js - 在同一集合中创建对象的 mongodb 模式数组或创建新集合的更好方法保存引用
问题描述
我很想知道哪种方法是设计架构的更好方法
1)假设集合 xyz
{
field1:anything
field2: anything
pqr:[{ name:String , value:Number} ]
}
2)
xyz collection and pqr collection
{ {
reference id of xyz,
name:String ,
value:Numbee
field1:anything }
field2: anything
}
注意:考虑第一种方法数组的大小不会超过 250
解决方案
我认为第一种方法比第二种方法好,因为数组字段中的对象并不复杂。但我认为你应该看到你会回应的请求。例如,如果您有请求GET /xyz
并且不需要返回 pqr 数组,则选择第一种方法。但是,如果您有请求GET /xyz/:id/pqr
或需要在第二种方法中返回 pqr 数组GET /xyz
会更好,因为您可能希望对此请求进行分页,并且第二种方法很容易实现,因为是 a db.collection.find(query).skip(page * size).limit(size)
,但在第一种方法中您必须解决这个问题在内存中或聚合中。
PD:对不起我的英语。
推荐阅读
- xcode - Xcode 是否按每秒一个点在 GPX 文件中使用 GPS 点?
- google-cloud-platform - Google Cloud API Gateway - 创建时“发生内部错误”
- node.js - 如何通过端口转发使节点服务器公开
- python - Python - 从文件夹中的文件列表中执行 sql 语句并为每个文件创建输出文件
- flutter - 无法在 VSCode 上热重载
- c# - xamarin iOS c#SearchBar在ListView项目中搜索时卡住并且工作速度很慢
- android - MLKit 检测器进程返回空列表
- java - Eclipse:引用本地代码而不是缓存的 gradle 依赖项
- optimization - 使用 scipy.curve_fit 的参数错误
- amazon-web-services - 在 Terraform cidrsubnet 函数中使用地图变量中的值