【问题标题】:Mongodb schema designMongoDB架构设计
【发布时间】:2011-05-25 14:24:14
【问题描述】:

我很困惑,以下情况的最佳格式是什么:

Name: Pretty nice hot dog
Stock: 10
Weight: 0.1 grams
Price: 2 dollars

Name: An ordinary dumbbell
Stock: 5
Weight: 4 kilograms
Price: 667.98 yens

这个:

db.item.save ({"_id" : 1, "name" : "Pretty nice hot dog", "stock" : 10, "weight" : {"value" : 0.1, "unit" : "gram"}, "price" : {"value" : 2, "unit" : "dollar"}})
db.item.save ({"_id" : 2, "name" : "An ordinary dumbbell", "stock" : 5, "weight" : {"value" : 4, "unit" : "kilogram"}, "price" : {"value" : 667.98, "unit" : "yen"}})

或者这个:

db.unit.save ({"_id" : 1, "name" : "dollar"})
db.unit.save ({"_id" : 2, "name" : "yen"})
db.unit.save ({"_id" : 4, "name" : "gram"})
db.unit.save ({"_id" : 5, "name" : "kilogram"})

db.item.save ({"_id" : 1, "name" : "Pretty nice hot dog", "stock" : 10, "weight" : {"value" : 0.1, "unit" : [new DBRef ("unit", 4)]}, "price" : [new DBRef ("unit", 1)]})
db.item.save ({"_id" : 2, "name" : "An ordinary dumbbell", "stock" : 5, "weight" : {"value" : 4, "unit" : [new DBRef ("unit", 5)]}, "price" : [new DBRef ("unit", 2)]})

“unit”字段的值是不可变的,不知道该不该放在单独的集合中。

谢谢

【问题讨论】:

    标签: mongodb schema


    【解决方案1】:

    从 MongoDb 文档中阅读 Schema Design。这正是你的情况。

    【讨论】:

      【解决方案2】:

      我会说不。除非您需要灵活地从单位(具有一定成本的所有项目)中查询,否则我不会。如果需要,以后可以随时使用 map reduce 来获取特定成本的所有项目。

      【讨论】:

        猜你喜欢
        • 2012-08-25
        • 1970-01-01
        • 2018-07-04
        • 2011-11-20
        • 2015-04-21
        • 2011-12-28
        • 1970-01-01
        • 2014-02-04
        相关资源
        最近更新 更多