250_Mongodb概述_文档类型

举报
alexsully 发表于 2021/12/17 14:34:44 2021/12/17
【摘要】 概述 数据类型

1 Nosql vs RDBMS

功能/特点

Nosql

关系型数据库

强一致性和弱一致性

CAP定理 最终一致性, ACID

严格一致性 ACID

二位/多维表

-值对存储, 列存储,文档存储,图形数据库

二维表, 数据和关系都存储在单独表中

结构化和非结构化

非结构化,半结构化,没有声明性查询语言

结构化查询语言

强一致性和弱一致性

弱事物

强事物

Join/

弱 没有预定义模式

,数据操作语言, 数据定义语言

成本代价

扩展性

强,高性能,高可用性和可伸缩性

2 Mongo 应用场景

MongoDB 的应用已经渗透到各个领域,比如游戏、物流、电商、内容管理、社交、物联网、视频直播等, 以下是几个实际的应用案例:

游戏场景,使用 MongoDB 存储游戏用户信息,用户的装备、积分等直接以内嵌文档的形式存储, 方便查询、更新
物流场景,使用 MongoDB 存储订单信息,订单状态在运送过程中会不断更新,以MongoDB 内嵌 数组的形式来存储,一次查询就能将订单所有的变更读取出来。
社交场景,使用 MongoDB 存储存储用户信息,以及用户发表的朋友圈信息,通过地理位置索引 实现附近的人、地点等功能
物联网场景,使用 MongoDB 存储所有接入的智能设备信息,以及设备汇报的日志信息,并对这 些信息进行多维度的分析
视频直播,使用 MongoDB 存储用户信息、礼物信息等

不适合使用MongoDB

1. 高度事务性系统:例如银行、财务等系统。MongoDB对事物的支持较弱; 
2. 传统的商业智能应用:特定问题的数据分析,多数据实体关联,涉及到复杂的、 高度优化的查询方式; 
3. 使用sql方便的时候;数据结构相对固定,使用sql进行查询统计更加便利的时候;

3 MongoDB概念

概念

MySQL

MongoDB

数据库

database

database

table

Collection

数据行

row

document

字段

Column

Field

索引

Index

Index

表关联

Join

Embedding & linkeding

分片/分区

Partition

Shard

分区键

partition key

sharding Key

4 MongoDB文档

MongoDB文档类似于JSON对象,称为BSON。字段的值可以包括其他文档,数组和文档数组

 5 MongoDB中的Bson数据类型

Bson是JSON文档的二进制表示形式,它包含比JSON更多的数据类型

Type

Number

Alias

Notes

Double

1

双精度浮点值。用于存储浮点值

 

String

2

字符串。存储数据常用的数据类型。在 MongoDB 中,UTF-8 编码的字符串才是合 法的

 

Object

3

用于内嵌文档

 

Array

4

用于将数组或列表或多个值存储为一个键

 

Binary data

5

二进制数据。用于存储二进制数据

 

Undefined

6

“undefined”

Deprecated

ObjectId

7

ObjectId

 

Boolean

8

“bool”

 

Date

9

日期时间。用 UNIX 时间格式来存储当前日期或时间。可以指定自己的日期时间: 创建 Date 对象,传入年月日信息

 

Null

10

用于创建空值

 

Regular Expression

11

正则表达式类型。用于存储正则表达式

 

DBPointer

12

“dbPointer”

Deprecated

JavaScript

13

“javascript”

 

Symbol

14

“symbol”

Deprecated

JavaScript (with scope)

15

JavaScript (with scope)

 

32-bit integer

16

“int”

 

Timestamp

17

MongoDB复制和Sharing使用的特殊内部类型。前4个字节是增量,第二4字节是时 间戳。

 

64-bit integer

18

64-bit integer

 

Decimal128

19

“decimal”

 

Min key

-1

比所有其他可能的BSON元素值都低的特殊类型

 

Max key

127

比所有其他可能的BSON元件值更高的特殊类型

 

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。