了解最受欢迎的文档数据库 MongoDB(一)

本文涉及的产品
云数据库 MongoDB,独享型 2核8GB
推荐场景:
构建全方位客户视图
云原生多模数据库 Lindorm,多引擎 多规格 0-4节点
Redis 开源版,标准版 2GB
推荐场景:
搭建游戏排行榜
简介: 了解最受欢迎的文档数据库 MongoDB(一)

开发者学习笔记【阿里云云数据库助理工程师(ACA)认证了解最受欢迎的文档数据库 MongoDB(一)

课程地址https://edu.aliyun.com/course/3112080/lesson/19072

了解最受欢迎的文档数据库 MongoDB(一)


内容介绍

一、 课程目标

二、 课程简介

三、 MongoDB 基本概念

四、 MongoDB 数据模型

五、 MongoDB 基本操作

六、 MongoDB 查询类型

七、 MongoDB 索引类型

八、 MongoDB 副本集

九、 MongoDB 分片集群

十、 MongoDB的七种武器

十一、 阿里云 MongoDB 的价值特征

十二、 阿里云MongoDB 优势亮点

十三、 阿里云&MongoDB 公司战略合作

十四、 阿里云MongoDB部署架构

十五、 阿里云MongoDB 备份/恢复

十六、 阿里云 MongoDB  监控体系

十七、 阿里云MongoDB CloudDBA:会话管理

十八、 阿里云MongoDB CloudDBA:索引推荐

十九、 MongoDB 上云/混合云/多云

二十、 阿里云 MongoDB 应用场景

 

一、 课程目标

1. 了解 MongoDB 的基本概念,部署架构和主要优势

2. 与原生 MongoDB 的区别,了解阿里云 MongoDB  的价值优势,部署架构,关键能力和应用场景。

 

二、 课程简介

1. MongoDB 简介

2. MongoDB 基本概念

3. MongoDB 部署架构

4. MongoDB 主要优势

5. 阿里云 MongoDB 简介

6. 阿里云 MongoDB 价值优势

7. 阿里云 MongoDB 部署架构

8. 阿里云 MongoDB 关键能力

9. 阿里云 MongoDB 应用场景


三、 MongoDB 基本概念

关系型数据库的主要特征是丰富的查询语句,数据的强一致性,ACID事务支持。主要表现为行列二维表,描述的是数据之间的关系。这种数据组织形式的问题主要就是变更表结构的时候需要授标导致影响业务,因此出现了非惯性型数据库。非关系型的数据库的主要特征是:灵活架构,敏捷开发,强大的扩展能力,性能优越。MongoDB 在4.0之前还不支持失误,在业界著名的数据库排名网站,MongoDB 常年排在TOP5是类型中排名最靠前的,处于领导者地位。而且热度持续上升,被誉为最受程序员开发者欢迎的数据库。MongoDB 从4.0开始支持的失误,因此介于关系型和非关系数据型库之间,所以 MongoDB 文档数据库。

图片83.png

 

四、 MongoDB 数据模型


关系型数据库术语

MongoDB术语

数据库(Databese)

数据库(Databese)

表(Table)

集合(Collection)

(Row)

文档(Document)

列(Column)

字段(Field)

一个或多个文档组成集合。

下边为 MongoDB 文档的例子,里面有多个字段和具体的值。

 图片84.png


五、 MongoDB 基本操作(增删改查 CRUD)

支持最新4.4版本的命令

举例:

插入文档

Db.collection.insertOne()

插入文件名为“sue ”,年龄26岁,状态Pending 文档

 插入多个文档,用逗号隔开文档

Db.collection.insertMany()

 查询数据

Db.collection.find()

查询前五位大于18岁用户名和地址

更新一个文档

Db.collection.updateOne()

Db.collection.replaceOne()

批量更新多个文档

Db.collection.updateMany()

删除一个文档

Db.collection.deleteOne()

批量删除多个文档

Db.collection.deleteMany()

图片85.png

 

六、 MongoDB 查询类型


Key-value queries    点查

Range queries      范围查询

Search queries      选择查询

Geospatial  queries    二维空间查询

Aggregation queries   聚合查询

图片86.png

数据量特别大时,常规数据查询会比较慢,因此需要建立索引,加快查询数据

 

七、 MongoDB 索引类型(数据量大时使用,让速度变快)


Single  Field Indexes   单字段索引

Compound Indexes     多字段组合索引

Multikey   Indexes     单t值索引

Text   Indexes         文本索引

Geospatial   Indexes    二维空间索引

Hashed  Indexes        哈希索引

图片87.png

MongoDB 索引类型较多,可以进入MongoDB官网深入了解

 

八、 MongoDB 副本集

MongoDB 支持副本集和分别集训和部署架构。副本集由 Client Primary 组成,每个副本集只有一个  primary节点,承载的是独显流量。 Secondary  节点可以有多个,承载的是独流量。当primary 节点发生故障, Secondary 节点会重新选组并建立新的组成关系,从而实现服务的连续使用。

图片88.png

 

九、 MongoDB 分片集群(Sharded  Cluster)


MongoDB 分片集群包含三种组建  mongos   负责路由多线请求和负载均衡,一般可以有多个节点。Config servers   主要存放实例的元数据和一些系统库,还有参数配置的信息,本身为副本集。 Shard 主要用于存放数据封片,还有处理读写请求,一般有两个以上,每个 shard 本身也是副本集。

下图直观显示一个 MongoDB 的数据,均匀分布到四个  shard上,每个分片上有256GB 的数据,可以通过扩展 shard 的数量;来实现海量数据的存储和处理。

图片89.png

相关文章
|
IDE Java Maven
Idea安装及项目设置配置和基本使用
Idea安装及项目设置配置和基本使用
891 0
Idea安装及项目设置配置和基本使用
IDEA第一次上传项目到gitlab
IDEA第一次上传项目到gitlab步骤
1387 1
|
SQL 监控 算法
MySQL高可用 MGR8.0 最佳实践——张彦东
MySQL高可用 MGR8.0 最佳实践——张彦东
4771 38
MySQL高可用 MGR8.0 最佳实践——张彦东
|
安全 Linux
使用squid在阿里云服务器(centos7)上搭建自己的代理服务器
大部分公司的内网往往有各种网络限制,无法访问部分网站。所以弄个服务器来代理一下,翻个公司的内网还是很舒服的。在此,我记录的是用squid来完成的代理服务器。   安装 检测是否安装: # which squid /usr/bin/which: no squid in (/usr/local/sbin:/usr/local... 出现以上提示说明没有安装。
8886 0
|
缓存 Devops 物联网
阿里巴巴DevOps实践指南(六)| 产品导向的交付
业务驱动和产品导向是适应数字化时代要求的协作和交付方式,是我们对 DevOps 实施的核心价值主张。同时,它们的有效实施离不开工程实践和能力的支撑,下一章我们将讨论 DevOps 的另一核心要素——持续交付的工程能力。
阿里巴巴DevOps实践指南(六)| 产品导向的交付
|
11月前
|
存储 SQL 关系型数据库
Mysql高可用架构方案
本文阐述了Mysql高可用架构方案,介绍了 主从模式,MHA模式,MMM模式,MGR模式 方案的实现方式,没有哪个方案是完美的,开发人员在选择何种方案应用到项目中也没有标准答案,合适的才是最好的。
826 3
Mysql高可用架构方案
|
XML Java 开发工具
AAPT2简介
AAPT2简介
|
Kubernetes 负载均衡 Cloud Native
Spring Cloud Kubernetes使用全解(一)—官方原版
Spring Cloud Kubernetes使用全解(一)—官方原版
13247 2
|
Kubernetes Java Linux
spring-cloud-kubernetes官方demo运行实战
spring-cloud-kubernetes是springcloud官方推出的开源项目,用于将Spring Cloud和Spring Boot应用运行在kubernetes环境,并且提供了通用的接口来调用kubernetes服务,今天就来初步体验一下。
1143 0
spring-cloud-kubernetes官方demo运行实战
|
Java Linux Apache
Linux安装maven并配置maven仓库
Linux安装maven并配置maven仓库
942 1