存储项目的多个属性

时间:2016-02-07 11:45:31

标签: json mongodb

我的问题与选择正确的模式而非实际问题更为相关。假设我有一个数据库,我存储有关几个项目的信息。这些物品具有各种属性(宽度,高度,重量等),但并非所有物品都具有相同的属性。当我将数据从数据库传输到客户端应用程序时,我将数据编码为json字符串。到目前为止,我想出了两个不同的相同数据表示,我想知道一个人是否比另一个有任何优势,或者两者都可以使用。

{
    ...
    properties :
    {
        property1 : "value1",
        property2 : "value2"
    }
}

{
    ...
    properties : 
    [
        {
            property_name : "property1",
            property_value : "value1"
        },
        {
            property_name : "property2",
            property_value : "value2"
        }
    ]
}

正如您在第一个表示中所看到的,我使用嵌入式文档来存储属性,而在第二种格式中我使用的是数组。

没有一个项目具有两个具有相同名称但价值不同的属性,但两个项目可以共享相同的属性。

第一种方法对我来说似乎更简单,但我很好奇是否有首选方法来执行此操作。

0 个答案:

没有答案