關(guān)于MongoDB數(shù)據(jù)庫什么是MongoDB數(shù)據(jù)庫

發(fā)布時間:2019/8/23 9:42:00

什么是MongoDB數(shù)據(jù)庫

1.MongoDB 是由C++語言編寫的, 是一個可擴(kuò)展的高性能,開源,模式自由,面向文檔的數(shù)據(jù)庫。 在高負(fù)載的情況下,添加更多的節(jié)點(diǎn),可以保證服務(wù)器性能。MongoDB 旨在為WEB應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲解決方案。

2.MongoDB是跨平臺的文檔型數(shù)據(jù)庫,文件以BSON格式存儲在硬盤中。(BSON是JSON的一種二進(jìn)制形式的存儲格式。)

3.MongoDB 將數(shù)據(jù)存儲為一個文檔,數(shù)據(jù)結(jié)構(gòu)由鍵值(key=>value)對組成。MongoDB 文檔類似于 JSON 對象。字段值可以包含其他文檔,數(shù)組及文檔數(shù)組。

4.MongoDB內(nèi)部執(zhí)行引擎為JS解釋器, 把文檔存儲成bson結(jié)構(gòu),在查詢時,轉(zhuǎn)換為JS對象,并可以通過熟悉的JS語法來操作。

MongoDB數(shù)據(jù)庫特性

1.靈活動態(tài)的文檔模型 (JSON對象)

2.高可用 Replica Set

3.水平擴(kuò)展  Sharding

4.支持二級索引、動態(tài)查詢、全文搜索 、聚合框架、MapReduce、GridFS、地理位置索引、內(nèi)存引擎 、地理分布等一系列的強(qiáng)大功能。

MongoDB數(shù)據(jù)庫缺點(diǎn)

1.多表關(guān)聯(lián): 僅僅支持Left Outer Join

2.SQL 語句支持: 查詢?yōu)橹,部分支?

3.多表原子事務(wù): 不支持

4.多文檔原子事務(wù):不支持

5.16MB 文檔大小限制,不支持中文排序 ,服務(wù)端 Javascript 性能欠佳

關(guān)系型數(shù)據(jù)庫與mongodb存儲方式對比

在傳統(tǒng)的關(guān)系型數(shù)據(jù)庫中,存儲方式是以表的形式存放,而在MongoDB中,以文檔的形式存在。MongoDB數(shù)據(jù)庫中有:數(shù)據(jù)庫(database)、集合(collection)、文檔(document)。

MongoDB數(shù)據(jù)庫適用場景

1.網(wǎng)站數(shù)據(jù): 適合實(shí)時的插入,更新與查詢,并具備網(wǎng)站實(shí)時數(shù)據(jù)存儲所需的復(fù)制及高度伸縮性。

2.緩存: 由于性能很高,也適合作為信息基礎(chǔ)設(shè)施的緩存層。在系統(tǒng)重啟之后,搭建的持久化緩存可以避免下層的數(shù)據(jù)源過載。

3.大尺寸、低價值的數(shù)據(jù): 使用傳統(tǒng)的關(guān)系數(shù)據(jù)庫存儲一些數(shù)據(jù)時可能會比較貴,在此之前,很多程序員往往會選擇傳統(tǒng)的文件進(jìn)行存儲。

4.高伸縮性的場景: 非常適合由數(shù)十或者數(shù)百臺服務(wù)器組成的數(shù)據(jù)庫。

5.用于對象及JSON數(shù)據(jù)的存儲: MongoDB的BSON數(shù)據(jù)格式非常適合文檔格式化的存儲及查詢。



Copyright© 2004-2020 河南海騰電子技術(shù)有限公司 版權(quán)所有   經(jīng)營性ICP/ISP證 備案號:B1-20180452   豫公網(wǎng)安備 41019702002018號    電子營業(yè)執(zhí)照