文章目录
一、 初识NoSQL
章节概要:
1. 大数据时代对数据存储的挑战
- 高并发读写需求
- 高扩展性
- 高效率存储和访问需求
2. 认识NoSQL
2.1 NoSQL 简介
2.2NoSQL 特点
- 易扩展
- 高性能
- 灵活的数据模型
- 高可用
2.3 关系型数据库与非关系型数据库的区别
- 存储方式:
- 存储结构:
- 存储规范:
- 扩展方式:
- 查询方式:
- 规范化:
- 读写性能:
- 授权方式:
3. NoSQL基础理论
3.1 CAP 原则
CAP原则又称CAP定理,它包括一致性、可用性和分区容错性三要素
CAP原则是一个分布式系统,最多可以同时实现两个要素,即AP或 CP或AC。选择AC策略,意味着放弃P,
也就是说,保证了系统的一致性和可用性,却违背了分布式系统的分区容错性;选择CP策略, 意味着放弃A,
也就是说,保证了系统的一致性和分区容错性,但用户体验较差,即当系统宕机时,需要等待所有节点的数
据一致时,用户方可访问系统;选择AP策略,意味着放弃C,也就是说,保证了系统的可用性和分区容错性,
但是节点之间的数据会出现不一致的 现象。因此,我们可以根据自己的需求,选择对应的策略。
3.2 BASE 理论
BASE理论与关系型数据库中的ACID理论是两种截然相反的理论。
下面,我们通过一张表来介绍BASE理论和ACID理论的区别。
3.3 最终一致性
4. NoSQL数据库分类
4.1 键值对存储数据库
- 会话存储应用场景
- 购物车应用场景
4.2 文件存储数据库
- 内容管理应用程序应用场景
- 电子商务应用程序应用场景
4.3 列式存储数据库
- 事件记录应用场景
- 博客网站应用场景
4.4 图形存储数据库
- 欺诈检测应用场景
- 推荐应用应用场景
4.5 NoSQL 数据库比较
二、文档存储数据库MongoDB
章节概要:
1. MongoDB概述
1.1 MongoDB的发展历程
1.2 MongoDB的简介
1.3 MongoDB的优势
- 易用性
- 高性能
- 高可用性
- 易扩展性
- 多种存储引擎
2. MongoDB体系结构
2.1 MongoDB的逻辑结构
2.2 MongoDB 与 MySQL体系结构的对比
2.3 MongoDB 的集合与文档
- 集合
- 文档
3. MongoDB数据类型
3.1 数据类型表
3.2 数字类型
3.3 日期类型
3.4 数组类型
3.5 Objectld 类型
3.6 内嵌文档
3.7 Code类型
4. MongoDB的使用规范
4.1 数据库使用规范及建议
4.2 集合使用规范及建议
4.3 文档使用规范及建议
三、MongoDB数据库操作
1. MongoDB部署
1.1 基于Windows平台
-
下载MongoDB安装包
-
解压MongoDB 安装包
-
启动MongoDB服务
-
创建用户user_mongo
1.2 基于Linux平台
- 下载MongoDB安装包
- 解压MongoDB 安装包
- 配置MongoDB
- 启动MongoDB服务
2. 数据库操作
2.1 新建数据库
2.2 查看数据库
2.3 删除数据库
3. 集合操作
3.1 创建集合
3.2 删除集合
4. 文档的插入、更新、删除
4.1 文档插入
4.2 文档更新
4.3 文档删除
5. 文档简单查询
5.1 查询所有文档
5.2 按条件查询文档
5.3 按特定条件查询文档
6. 聚合操作
6.1 聚合管道操作
6.2 Map-Reduce 操作
7. 使用索引优化查询
7.1 索引概述
- 单字段索引
- 复合索引
- 多键索引
- 地理空间索引
-
文本索引
-
哈希索引
7.2 索引操作
-
查看索引
-
查看索引大小
-
创建索引
-
删除索引
8. 使用Java操作MongoDB
8.1 搭建Java环境
8.2 基于Java API 操作MongoDB
9. 使用Python操作MongoDB
9.1 搭建Python环境
9.2 基于Python API 操作MongoDB
10. 使用Robo 3T 操作MongoDB
10.1 Robo 3T工具的下载安装
10.2 基于Robo 3T 操作MongoDB
11. 安全与访问控制
11.1 用户访问控制
11.2 用户管理操作
四、MongoDB副本集
1. 副本集概述
2.副本集成员
3. 部署副本集
3.1 环境准备
3.2 副本集的安装与启动
3.3 副本集的初始化
4. 副本集操作
4.1 查看副本集成员状态
4.2 同步副本文档
4.3 故障转移
4.4 配置副本集成员
4.5 安全认证