NoSQL与MongoDB期末复习关键点

需积分: 5 0 下载量 172 浏览量 更新于2024-08-26 收藏 304KB PDF 举报
"这是一份关于测试综合技能的期末考试复习资料,包含了选择题、填空题和判断题,主要涉及NoSQL数据库、MongoDB、Redis等技术知识。" 在测试综合技能的期末考核中,考生需要掌握的关键知识点包括: 1. NoSQL数据库的四大类型:NoSQL数据库主要分为键值数据库(如Amazon DynamoDB)、列族数据库(如Google Bigtable)、文档数据库(如MongoDB)和图数据库(如Neo4j)。这些类型的数据库在处理大规模数据、分布式存储和灵活性方面各具优势。 2. NoSQL的特点:NoSQL数据库以其灵活的可扩展性、灵活的数据模型和与云计算的紧密集成而闻名。它们通常更适合处理非结构化或半结构化数据,能够快速适应不断变化的需求。 3. NoSQL的三大基石理论:CAP定理指出,在分布式系统中,一致性(Consistency)、可用性(Availability)和分区容错性(Partition Tolerance)无法同时得到保证。BASE原则(Basically Available, Soft State, Eventually Consistent)是在CAP基础上提出的,接受系统可能在一段时间内存在不一致状态,但最终会达到一致性。最终一致性是NoSQL数据库实现一致性的一种方式。 4. MongoDB核心概念:MongoDB是一种基于文档的NoSQL数据库,文档是其核心单元,类似于JSON对象。在MongoDB中,数据以BSON(Binary JSON)格式存储,提供了可遍历性和丰富的数据类型。 5. MongoDB操作:MongoDB的常用命令包括`show dbs`用于显示所有数据库,`db.dept.find()`和`db.dept.findOne()`分别用于查找所有文档和一个文档,`db.dropDatabase()`用于删除当前数据库,`db.dept.remove({deptno:1})`用于删除特定文档,`db.dept.update({deptno:2}, {$set: {location: "Shenzhen"}})`用于更新文档,`db.cl.drop()`用于删除集合,`db.shutdownServer()`用于关闭数据库。 6. MongoDB的写安全机制:MongoDB提供了多种写入策略,包括非确认式写入、确认式写入、日志写入和复制确认式写入,以确保数据的安全性和可靠性。 7. 数据库索引:索引是提升数据库查询性能的重要工具,MongoDB支持创建BTree结构的索引来加速数据检索。 8. Redis概述:Redis是一个高性能的内存数据结构存储系统,支持持久化,提供丰富的数据类型,并支持数据备份。它的五大数据类型包括String、List、Set、Sorted Set(Zset)和Hash。 9. Redis持久化:Redis提供了两种持久化方式,RDB(定期保存数据快照)和AOF(记录写操作日志)。RDB的触发机制有`save`、`bgsave`和自动触发,AOF的同步策略包括`always`(每次写操作后立即同步)、`everysec`(每秒同步一次)和`no`(不同步)。 10. NoSQL与关系型数据库的比较:关系型数据库(如MySQL、Oracle)具备完备的关系理论、事务支持和高效的查询优化,适合强一致性场景。然而,它们在处理海量数据、应对高并发以及支持复杂数据模型上可能受限。NoSQL数据库则在扩展性、灵活性和处理非结构化数据方面表现出色,但在事务处理和标准支持上相对较弱。 简答题可能涉及到NoSQL数据库和关系型数据库在特定场景下的优劣势分析,需要考生结合具体应用环境来阐述两者的选择理由。