MongoDB 的簡介_數(shù)據(jù)模型

MongoDB 趨勢

MongoDB 的簡介_JSON_02

對于 MongoDB 的認(rèn)識(shí) Q&A

Q

A

什么是 MongoDB?

一個(gè)以 JSON 為數(shù)據(jù)模型的文檔數(shù)據(jù)庫

一個(gè)以 JSON 為數(shù)據(jù)模型的文檔數(shù)據(jù)庫

文檔來自于“JSON Document”,并非我們一般理解的 PDF,WORD

誰開發(fā) MongDB?

上市公司 MongoDB Inc. ,總部位于美國紐約。

主要用途有哪些?

OLTP\OLAP數(shù)據(jù)庫,類似于 Oracle, MySQL,海量數(shù)據(jù)處理,數(shù)據(jù)平

臺(tái)。

主要特點(diǎn)是什么?

無模式或可選。友好的JSON數(shù)據(jù)模型,開發(fā)方便。

MongoDB 是免費(fèi)的嗎?

MongoDB 有兩個(gè)發(fā)布版本:社區(qū)版和企業(yè)版。企業(yè)版基于商業(yè)協(xié)議,

需付費(fèi)。

MongoDB 版本變遷

MongoDB 的簡介_數(shù)據(jù)模型_03

MongoDB vs RDBMS

功能

MongoDB

RDBMS

數(shù)據(jù)模型

JSON

Relational

數(shù)據(jù)庫類型

OLTP/OLAP

OLTP/OLAP

CRUD 操作

MQL/SQL

SQL/SQLX

高可用

原生Replica-Set

Cluster、中間件

橫向擴(kuò)展能力

原生MSC

分片、中間件

索引支持

B-Tree、F-text、GIS、multikey、HASH、TTL

B-Tree

開發(fā)難度

easy

hard

數(shù)據(jù)容量

無理論上限

千萬、億

擴(kuò)展方式

垂直擴(kuò)展+水平擴(kuò)展

垂直擴(kuò)展

MongoDB 的簡介_數(shù)據(jù)模型_04

MongoDB vs MySQL邏輯結(jié)構(gòu)對比

MySQL

MongoDB

database

database

table

collection

row

document

MongoDB 的簡介_SQL_05

MongoDB 特色及優(yōu)勢

MongoDB 優(yōu)勢:面向開發(fā)者的易用 + 高效數(shù)據(jù)庫

MongoDB 的簡介_SQL_06

SQL 模型:錯(cuò)綜復(fù)雜

MongoDB 的簡介_JSON_07

JSON 模型:條理清楚

MongoDB 的簡介_數(shù)據(jù)模型_08

快速響應(yīng)業(yè)務(wù)變化:

a. 多類型:

同一個(gè)Collection中,可以包含不同字段(類型)的文檔對象.

b. 更靈活:

線上修改結(jié)構(gòu),應(yīng)用與數(shù)據(jù)庫均無須下線

MongoDB 的簡介_JSON_09

簡潔的開發(fā)模式:

a. 數(shù)據(jù)庫引擎只需要在一個(gè)存儲(chǔ)區(qū)讀寫.

b. 反范式、無關(guān)聯(lián)的組織極大優(yōu)化查詢速度.

c. 程序API自然,開發(fā)快速.

MongoDB 的簡介_SQL_10

SQL 插入數(shù)據(jù)代碼量:

MongoDB 的簡介_SQL_11

MongoDB 只需要兩行代碼:

MongoDB 的簡介_數(shù)據(jù)模型_12

MongoDB 優(yōu)勢:原生的高可用和橫向擴(kuò)展能力

高可用能力

a. Replica Set – 2 to 50 個(gè)成員

b. 自恢復(fù)

c. 多中心容災(zāi)能力

d. 滾動(dòng)服務(wù) – 最小化服務(wù)終端

MongoDB 的簡介_JSON_13

橫向擴(kuò)展能力

a. 需要的時(shí)候無縫擴(kuò)展

b. 應(yīng)用全透明

c. 多種數(shù)據(jù)分布策略

d. 輕松支持TB–PB數(shù)量級

MongoDB 的簡介_SQL_14

MongoDB 技術(shù)優(yōu)勢總結(jié)

a. JSON 結(jié)構(gòu)和對象模型接近,開發(fā)代碼量低

b. JSON 的動(dòng)態(tài)模型意味著更容易響應(yīng)新的業(yè)務(wù)需求

c. 復(fù)制集提供 99.999% 高可用

d. 分片架構(gòu)支持海量數(shù)據(jù)和無縫擴(kuò)容