我有一个项目(ta-daaa)范围 - 对我很敏感。MongoDB设计/重构
最开始只是一个简单的应用程序来跟踪校准工具(每个工具都有一个年度转动周期检查校准)已经变成了库存跟踪过。
所以我目前的模式有一些必需的领域和校准的嵌入式DOC:
{
_id: ObjectId("51b0d94c3f72fb89c9000014"),
barcode: "H-131887",
calibrations: [
{
_id: ObjectId("51b0d94c3f72fb89c9000015"),
cal_date: ISODate("2013-07-03T16:04:57.893Z"),
cal_date_due: ISODate("2013-07-03T16:04:57.894Z"),
ats_in: ISODate("2013-06-01T16:04:57.895Z"),
ats_out: ISODate("2013-06-06T16:04:57.897Z")
},
{
_id: ObjectId("51b0e6053f72fbb27900001b"),
cal_date: ISODate("2013-06-13T00:00:00Z"),
cal_date_due: ISODate("2014-06-13T00:00:00Z"),
ats_in: ISODate("2013-06-06T00:00:00Z"),
ats_out: ISODate("2013-06-17T00:00:00Z"),
updated_at: ISODate("2013-07-09T14:44:31.113Z"),
created_at: ISODate("2013-06-06T19:41:57.770Z")
}
],
created_at: ISODate("2013-06-06T18:47:40.481Z"),
creator_id: ObjectId("5170547c791e4b1a16000001"),
description: "",
group: "engine",
location: "Cabinet 1",
maker: "MITUTOYO",
model: "2046S",
serial: "QEL228",
status: "In",
tool: "Dial Indicator",
updated_at: ISODate("2013-07-09T14:44:31.103Z")
}
什么是允许在这个模式如果不要求这些条码/串行非标定工具的最佳方式工具?此外,他们不会有校准日期,所以我现在的表,其中列出了工具和最近校准日期也不会开心返回零校准......
您可能想看看使用稀疏索引,生活在文件和必须针对查询子集中的任何领域。请参阅http://docs.mongodb.org/manual/core/indexes/#sparse-indexes –
!稀疏是有用的!更新链接: http://docs.mongodb.org/manual/core/index-sparse/ – kroe