MongoDB是一種強大,靈活,可擴展的數(shù)據(jù)存儲方式.它擴展了關系型數(shù)據(jù)庫的眾多有用功能,如輔助索引,范圍查詢和排序.MongoDB的功能非常豐富,比如:內(nèi)置的對MapReduce式聚合的支持,以及對地理空間索引的支持.
1.1豐富的數(shù)據(jù)模型
MongoDB是面向文檔的數(shù)據(jù)庫,不是關系型數(shù)據(jù)庫.放棄關系模型的主要原因就是為了獲得更加方便的擴展性,還有其他的好處.
基本思路就是將原來"行"(row)的觀念轉(zhuǎn)化為更加靈活的"文檔"(document)模型.面向文檔的方式可以將文檔或者數(shù)組內(nèi)嵌進來,所以可以用一條記錄表示非常復雜的層次關系.
MongoDB沒有模式:文檔的鍵不會事先定義也不會固定不變.由于沒有模式需要更改,通常不需要遷移大量數(shù)據(jù),不比將所有數(shù)據(jù)都放在一個模子里面,應用層可以處理新增或者丟失的鍵
1.2容易擴展
應用數(shù)據(jù)集的大小增長很快.傳感器技術的發(fā)展,帶寬的增加,連接internet手持設備的普及使得當下即便是很小的應用也要存儲大量的數(shù)據(jù),量大到數(shù)據(jù)庫處理困難.T級別的數(shù)據(jù)庫已司空見慣.
由于開發(fā)者要存儲的數(shù)據(jù)不斷增長,就會面臨選擇:是升級數(shù)據(jù)庫(買臺更好的服務器),
還是擴展數(shù)據(jù)庫(將數(shù)據(jù)分散到很多的機器上).通常升級數(shù)據(jù)庫是最省力氣的做法,但價格不菲.
但是擴展不但經(jīng)濟而且還能持續(xù)增加:想要增加存儲空間或者提升性能,只需要買臺一般的服務器加入到集群中.
MongoDB最初的設計就考慮了擴展的問題,它所采用的面向文檔的數(shù)據(jù)模型使其可以自動在多臺服務器間分割數(shù)據(jù).它還可以平衡集群的數(shù)據(jù)和負載,自動重排文檔.這樣開發(fā)者就可以專注于編寫應用,而不是考慮如何擴展.要是需要更大的容量,只需在集群中添加新機器,然后讓數(shù)據(jù)庫來處理剩下的事.
1.3豐富的功能
a)索引
MongoDB支持通用輔助索引,能進行多種快速查詢,也提供唯一的,復合的和地理空間索引能力
b)存儲JavaScript
開發(fā)人員不必使用存儲過程,可以直接在服務端存取JavaScript函數(shù),值
c)聚合
MongoDB支持MapReduce和其他聚合工具
d)固定集合
集合的大小是有上限的,這對某些類型的數(shù)據(jù)(如日志)特別有用
e)文件存儲
MongoDB支持用一種容易使用的協(xié)議存儲大型文件和文件的元數(shù)據(jù)
有些關系型數(shù)據(jù)庫的常見功能,MongoDB不具備,如:join和復雜的多行事務.
這個架構上考慮是為了提高擴展性,因為這兩個功能實在很難在一個分布式系統(tǒng)上實現(xiàn).
1.4高性能
MongoDB使用MongoDB傳輸協(xié)議作為與服務器交互的主要方式(與之對應的協(xié)議需要更多的開銷,如:http/Rest).
它對文檔進行動態(tài)填充,預分配數(shù)據(jù)文件,用空間換取性能的穩(wěn)定.默認的存儲引擎中使用了內(nèi)存映射文件,將內(nèi)存管理工作
交給操作系統(tǒng)去處理.動態(tài)查詢優(yōu)化器會"記住"執(zhí)行查詢最高效的方式.
雖然MongoDB功能強大,盡量保持關系型數(shù)據(jù)庫的眾多特性,它盡可能的將服務器處理邏輯交給客戶端(由驅(qū)動程序或者用戶的應用程序處理).這樣精簡的設計是的MongoDB獲得了非常好的性能.
1.5簡便的管理
MongoDB盡量讓服務器自治來簡化數(shù)據(jù)庫的管理,處理啟動數(shù)據(jù)庫服務器之外,幾乎沒有什么必要的管理操作.如果主服務器掛掉了,MongoDB會自動切換到備份服務器上,并且將備份服務器升級為活躍服務器.在分布式環(huán)境下,集群只需要知道有新增的節(jié)點,就會自動集成和配置新節(jié)點.
MongoDB的管理理念就是盡可能的讓服務器自動配置,讓用戶在需要的時候調(diào)整設置.
MongoDB的愿景是對自身更好的詮釋--建立一個靈活,高效,易于擴展,功能完備的數(shù)據(jù)庫
標簽:景德鎮(zhèn) 丹東 鶴崗 本溪 邯鄲 昭通 吉安 大理
巨人網(wǎng)絡通訊聲明:本文標題《MongoDB簡介 MongoDB五大特色》,本文關鍵詞 MongoDB,簡介,五大,特色,MongoDB,;如發(fā)現(xiàn)本文內(nèi)容存在版權問題,煩請?zhí)峁┫嚓P信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡,涉及言論、版權與本站無關。