结构化数据与非结构化数据?

时间:2018-09-08 19:40:59

标签: sql database mongodb

我一直在使用mongoDB文档来测试我的应用程序。从我所读的内容中,mongoDB被认为是非结构化数据。但是,我很困惑,因为我的文档具有id,title等字段。这不是结构化的吗?

有人可以给我一些数据库结构化和非结构化数据的例子吗?

3 个答案:

答案 0 :(得分:0)

MongoDB是NoSQL数据库。简而言之,不需要像SQL数据库那样使用列名及其数据类型创建表。您存储在MongoDB中的数据不会在内部组织为表格。但是,仍然需要以键值对(JSON格式)的方式将数据存储在集合中。

例如:db.details.find().pretty();,其中details是集合的名称:

{                                                                          
        "_id" : ObjectId("5b93721978b7d31f00fc1bd7"),                      
        "id" : "15IT112",                                                  
        "name" : "Shivam"                                                                                                                                                
}                                                                          
{                                                                          
        "_id" : ObjectId("5b93722d78b7d31f00fc1bd8"),                      
        "id" : "15IT113",                                                  
        "name" : "Reena"                                                                                                                                                    
}                      

除此之外,MongoDB确实提供了使用Mongoose(一个对象关系映射器)构造数据库的选项。您可以根据需要定义架构。

例如:

let mongoose = require('mongoose');

let detailSchema = mongoose.Schema({
    id:{
        type: String,
        required: true
    },
    name:{
        type: String,
        required: true
    }
});                                                    

答案 1 :(得分:0)

非结构化数据具有内部结构,但不能通过预定义的数据模型或架构进行结构化。

您可以有一行包含4个字段,另一行包含15个字段。在这里,如果您没有某些字段或列的数据,则不存储它们,否则将忽略它们。在以后开发应用程序时,您可能会发现需要添加一些字段,这是非结构化数据库发挥主要作用的地方。

答案 2 :(得分:0)

Unstructured data has internal structure but is not structured via pre-defined data models or schema.

这通常是在网上找到的定义,但可以理解的是,这令人困惑。

在使用MongoDB文档的示例中,这些文档是使用架构和模型定义的。这是internal structure,用于定义非结构化数据。

但是,文档不是通过预定义的数据模型或架构来构造的。这意味着documents are stored in a way that is not structured via pre-defined models or schema。而是将它们存储在不遵循预定义模型或架构的集合中。