任何關(guān)系數(shù)據(jù)庫都具有典型的架構(gòu)設(shè)計(jì),該設(shè)計(jì)顯示表的數(shù)量以及這些表之間的關(guān)系。在MongoDB中,沒有關(guān)系的概念。
模式少 ? MongoDB是一個(gè)文檔數(shù)據(jù)庫,其中一個(gè)集合包含不同的文檔。一個(gè)文檔之間的字段數(shù),內(nèi)容和文檔大小可能會(huì)有所不同。
單個(gè)對(duì)象的結(jié)構(gòu)清晰。
沒有復(fù)雜的聯(lián)接。
深入的查詢能力。MongoDB支持使用與SQL幾乎一樣強(qiáng)大的基于文檔的查詢語言對(duì)文檔進(jìn)行動(dòng)態(tài)查詢。
性能診斷、調(diào)優(yōu)。
易于擴(kuò)展? MongoDB易于擴(kuò)展。
不需要將應(yīng)用程序?qū)ο筠D(zhuǎn)換/映射到數(shù)據(jù)庫對(duì)象。
使用內(nèi)部存儲(chǔ)器存儲(chǔ)(窗口式)工作集,從而可以更快地訪問數(shù)據(jù)。
面向文檔的存儲(chǔ) ?類JSON文檔作為存儲(chǔ),不固定表模式(schema-free);
全文索引支持
多副本與高可用性
自動(dòng)分片
支持多種類型的查詢
快速原地更新
map/reduce支持
gridfs:各種size大小的集群文件支持
大數(shù)據(jù)
內(nèi)容管理和交付
移動(dòng)和社交基礎(chǔ)設(shè)施
用戶數(shù)據(jù)管理
數(shù)據(jù)中心
在關(guān)系數(shù)據(jù)庫(RDBMS)中,表被用作存儲(chǔ)元素,而在MongoDB中,表被用作集合。
在RDBMS中,我們有多個(gè)模式,在每個(gè)模式中,我們創(chuàng)建表來存儲(chǔ)數(shù)據(jù),而MongoDB是一個(gè)面向文檔的數(shù)據(jù)庫,其中的數(shù)據(jù)以BSON格式(類似于JSON格式)寫入。
MongoDB幾乎比傳統(tǒng)數(shù)據(jù)庫系統(tǒng)快100倍。
(1)一個(gè)服務(wù)可以支持多個(gè)數(shù)據(jù)庫;
(2)一個(gè)數(shù)據(jù)庫可以支持多個(gè)表,在mongodb中,以集合(collection)代替了表(table)的概念;
(3)mysql是關(guān)系型的數(shù)據(jù)庫,即RDBMS,而mongodb是schema-free的,它更像一個(gè)鍵值存儲(chǔ)系統(tǒng)(kv),但與kv不同的是,它又能像mysql的模式一樣,能修改文檔內(nèi)的數(shù)據(jù),并對(duì)內(nèi)部數(shù)據(jù)進(jìn)行索引; mongodb文檔以BSON格式存儲(chǔ),即Binary JSON,BSON是一種二進(jìn)制交換格式,類似Google Protocol Buffer.