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