我一直在使用mongoDB文档来测试我的应用程序。从我所读的内容中,mongoDB被认为是非结构化数据。但是,我很困惑,因为我的文档具有id,title等字段。这不是结构化的吗?
有人可以给我一些数据库结构化和非结构化数据的例子吗?
答案 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
。而是将它们存储在不遵循预定义模型或架构的集合中。