MongoDB面试题及答案(1-5)

1、什么是MongoDB?它和传统关系型数据库有什么不同之处?

MongoDB是一种开源的文档数据库,使用类似JSON的BSON(二进制JSON)格式存储数据。它与传统关系型数据库不同之处在于,它不需要固定的模式,数据以文档的形式存储,可以方便地扩展和处理非结构化的数据。

2、MongoDB中的文档(Document)是什么?

MongoDB中的文档是一个由键值对组成的类JSON格式的数据结构。每个文档都有一个唯一的ID,可以使用任意的数据结构来表示文档中的值。

3、MongoDB中的集合(Collection)是什么?

MongoDB中的集合类似于关系型数据库中的表格,它是一组相关文档的容器。一个集合可以包含任意数量的文档,每个文档可以具有不同的结构。

4、如何在MongoDB中创建一个集合?

在MongoDB中,可以通过在一个集合中插入数据来创建集合。当第一次插入数据时,MongoDB将自动创建该集合。

例如,以下代码将在名为mycollection的数据库中创建一个集合:
db.mycollection.insertOne({ name: “John”, age: 30 })

5、MongoDB中的索引是什么?如何创建索引?

MongoDB中的索引是一种用于提高查询效率的数据结构,类似于关系型数据库中的索引。它可以加快查询操作的速度,避免扫描整个集合。
在MongoDB中,可以使用createIndex()方法来创建索引。例如,以下代码将为mycollection集合中的age字段创建一个索引:
db.mycollection.createIndex({ age: 1 })
其中,数字1表示索引按照升序排列,-1表示降序排列。