MongoDB面试题及答案整理

1.什么是MongoDB

MongoDB是一个文档数据库,提供好的性能,领先的非关系型数据库。采用BSON存储文档数据。
BSON()是一种类json的一种二进制形式的存储格式,简称Binary JSON.
相对于json多了date类型和二进制数组。

2.MongoDB的优势有哪些

  • 面向文档的存储:以 JSON 格式的文档保存数据。
  • 任何属性都可以建立索引。
  • 复制以及高可扩展性。
  • 自动分片。
  • 丰富的查询功能。
  • 快速的即时更新。

3 什么是数据库

  数据库可以看成是一个电子化的文件柜,用户可以对文件中的数据运行新增、检索、更新、删除等操作。数据库是一个
所有集合的容器,在文件系统中每一个数据库都有一个相关的物理文件。

4.什么是集合(表)

集合就是一组 MongoDB 文档。它相当于关系型数据库(RDBMS)中的表这种概念。集合位于单独的一个数据库中。
一个集合内的多个文档可以有多个不同的字段。一般来说,集合中的文档都有着相同或相关的目的。

5 什么是文档(记录)

  文档由一组key value组成。文档是动态模式,这意味着同一集合里的文档不需要有相同的字段和结构。在关系型
数据库中table中的每一条记录相当于MongoDB中的一个文

6 MongoDB和关系型数据库术语对比图

7.什么是非关系型数据库

  非关系型数据库的显著特点是不使用SQL作为查询语言,数据存储不需要特定的表格模式。

8 为什么用MOngoDB?

  • 架构简单
  • 没有复杂的连接
  • 深度查询能力,MongoDB支持动态查询。
  • 容易调试
  • 容易扩展
  • 不需要转化/映射应用对象到数据库对象
  • 使用内部内存作为存储工作区,以便更快的存取数据。

9 在哪些场景使用MongoDB

  • 大数据
  • 内容管理系统
  • 移动端Apps
  • 数据管理

10 MongoDB中的命名空间是什么意思?

mongodb存储bson对象在丛集(collection)中.数据库名字和丛集名字以句点连结起来叫做名字空间(namespace).   一个集合命名空间又有多个数据域(extent),集合命名空间里存储着集

  • 4
    点赞
  • 32
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是几个关于MongoDB的常见面试题答案: 1. 什么是MongoDBMongoDB是一个开源的面向文档的NoSQL数据库,它以灵活的文档模型存储数据,支持动态查询和水平扩展。 2. MongoDB与传统关系型数据库的区别是什么? - 数据模型:MongoDB是面向文档的,而传统关系型数据库是基于表的。 - 数据结构:MongoDB使用BSON(类JSON的二进制表示)来存储数据,而关系型数据库使用表、行和列。 - 查询语言MongoDB使用基于文档的查询语言,如find()和aggregate(),而关系型数据库使用SQL查询语言。 - 扩展性:MongoDB支持水平扩展,可以通过分片来处理大规模数据量和高并发访问。 3. MongoDB支持哪些数据类型? MongoDB支持多种数据类型,包括字符串、整数、浮点数、日期、布尔值、数组、内嵌文档和ObjectId等。 4. MongoDB如何实现高可用性? MongoDB通过复制集(Replica Set)来实现高可用性。一个复制集包含一个主节点和多个从节点,主节点处理写操作并将数据复制到从节点,以保持数据一致性。 5. 什么是索引,为什么在MongoDB中使用索引? 索引是为了加快查询速度而创建的数据结构。在MongoDB中,索引可以提高查询性能,减少扫描的文档数量,从而加快查询速度。 6. 如何在MongoDB中进行数据备份和恢复? MongoDB提供了mongodump和mongorestore命令行工具,可以用于备份和恢复数据。mongodump用于导出数据,mongorestore用于将备份数据导入到MongoDB。 7. MongoDB如何处理大量写入操作? MongoDB使用写入操作的顺序日志(Write Concern Journaling)来确保数据的可靠性和一致性。它将写入操作记录到日志中,并在写入磁盘之前应用到数据文件,以防止数据丢失。 8. 如何在MongoDB中执行聚合操作? MongoDB提供了aggregate管道操作符,可以用于执行聚合操作,如分组、筛选、排序和计算等。通过使用不同的管道阶段,可以构建复杂的聚合查询。 以上是一些关于MongoDB的常见面试题答案。在面试中展示对MongoDB的理解和实际应用经验,能够加分。同时,建议深入学习和掌握MongoDB的各种特性和用法,以便在实际项目中充分发挥其优势。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值