Mongodb介紹(非原創(chuàng))

文章大綱

一、什么是nosql
二、mongodb與mysql比較
三、參考文章

一、什么是nosql

1. 簡(jiǎn)介

這一類(lèi)數(shù)據(jù)庫(kù)主要會(huì)使用到一個(gè)哈希表,這個(gè)表中有一個(gè)特定的鍵和一個(gè)指針指向特定的數(shù)據(jù)。Key/value模型對(duì)于IT系統(tǒng)來(lái)說(shuō)的優(yōu)勢(shì)在于簡(jiǎn)單、易部署。但是如果DBA只對(duì)部分值進(jìn)行查詢或更新的時(shí)候,Key/value就顯得效率低下了

2. NoSQL數(shù)據(jù)庫(kù)的四大分類(lèi)

鍵值存儲(chǔ)數(shù)據(jù)庫(kù)
這一類(lèi)數(shù)據(jù)庫(kù)主要會(huì)使用到一個(gè)哈希表,這個(gè)表中有一個(gè)特定的鍵和一個(gè)指針指向特定的數(shù)據(jù)。Key/value模型對(duì)于IT系統(tǒng)來(lái)說(shuō)的優(yōu)勢(shì)在于簡(jiǎn)單、易部署。但是如果DBA只對(duì)部分值進(jìn)行查詢或更新的時(shí)候,Key/value就顯得效率低下了。舉例如:Tokyo Cabinet/Tyrant, Redis, Voldemort, Oracle BDB.

列存儲(chǔ)數(shù)據(jù)庫(kù)
這部分?jǐn)?shù)據(jù)庫(kù)通常是用來(lái)應(yīng)對(duì)分布式存儲(chǔ)的海量數(shù)據(jù)。鍵仍然存在,但是它們的特點(diǎn)是指向了多個(gè)列。這些列是由列家族來(lái)安排的。如:Cassandra, HBase, Riak.

文檔型數(shù)據(jù)庫(kù)
文檔型數(shù)據(jù)庫(kù)的靈感是來(lái)自于Lotus Notes辦公軟件的,而且它同第一種鍵值存儲(chǔ)相類(lèi)似。該類(lèi)型的數(shù)據(jù)模型是版本化的文檔,半結(jié)構(gòu)化的文檔以特定的格式存儲(chǔ),比如JSON。文檔型數(shù)據(jù)庫(kù)可 以看作是鍵值數(shù)據(jù)庫(kù)的升級(jí)版,允許之間嵌套鍵值。而且文檔型數(shù)據(jù)庫(kù)比鍵值數(shù)據(jù)庫(kù)的查詢效率更高。如:CouchDB, MongoDb. 國(guó)內(nèi)也有文檔型數(shù)據(jù)庫(kù)SequoiaDB,已經(jīng)開(kāi)源。

圖形(Graph)數(shù)據(jù)庫(kù)
圖形結(jié)構(gòu)的數(shù)據(jù)庫(kù)同其他行列以及剛性結(jié)構(gòu)的SQL數(shù)據(jù)庫(kù)不同,它是使用靈活的圖形模型,并且能夠擴(kuò)展到多個(gè)服務(wù)器上。NoSQL數(shù)據(jù)庫(kù)沒(méi)有標(biāo)準(zhǔn)的查詢語(yǔ)言(SQL),因此進(jìn)行數(shù)據(jù)庫(kù)查詢需要制定數(shù)據(jù)模型。許多NoSQL數(shù)據(jù)庫(kù)都有REST式的數(shù)據(jù)接口或者查詢API。如:Neo4J, InfoGrid, Infinite Graph.
因此,我們總結(jié)NoSQL數(shù)據(jù)庫(kù)在以下的這幾種情況下比較適用:1、數(shù)據(jù)模型比較簡(jiǎn)單;2、需要靈活性更強(qiáng)的IT系統(tǒng);3、對(duì)數(shù)據(jù)庫(kù)性能要求較高;4、不需要高度的數(shù)據(jù)一致性;5、對(duì)于給定key,比較容易映射復(fù)雜值的環(huán)境。

3. 適用場(chǎng)景

(1)數(shù)據(jù)模型比較簡(jiǎn)單;
(2)需要靈活性更強(qiáng)的IT系統(tǒng);
(3)對(duì)數(shù)據(jù)庫(kù)性能要求較高;
(4)不需要高度的數(shù)據(jù)一致性;
(5)對(duì)于給定key,比較容易映射復(fù)雜值的環(huán)境

4. NoSQL具體產(chǎn)品種類(lèi)

(1)Redis
(2)Mongodb
(3)HBase等

二、mongodb與mysql比較

1. MySQL

關(guān)系型數(shù)據(jù)庫(kù)。
在不同的引擎上有不同 的存儲(chǔ)方式。
查詢語(yǔ)句是使用傳統(tǒng)的sql語(yǔ)句,擁有較為成熟的體系,成熟度很高。
開(kāi)源數(shù)據(jù)庫(kù)的份額在不斷增加,mysql的份額頁(yè)在持續(xù)增長(zhǎng)。
缺點(diǎn)就是在海量數(shù)據(jù)處理的時(shí)候效率會(huì)顯著變慢。

2. Mongodb

非關(guān)系型數(shù)據(jù)庫(kù)(nosql ),屬于文檔型數(shù)據(jù)庫(kù)。先解釋一下文檔的數(shù)據(jù)庫(kù),即可以存放xml、json、bson類(lèi)型系那個(gè)的數(shù)據(jù)。這些數(shù)據(jù)具備自述性(self-describing),呈現(xiàn)分層的樹(shù)狀數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)結(jié)構(gòu)由鍵值(key=>value)對(duì)組成。
存儲(chǔ)方式:虛擬內(nèi)存+持久化。
查詢語(yǔ)句:是獨(dú)特的Mongodb的查詢方式。
適合場(chǎng)景:事件的記錄,內(nèi)容管理或者博客平臺(tái)等等。
架構(gòu)特點(diǎn):可以通過(guò)副本集,以及分片來(lái)實(shí)現(xiàn)高可用。
數(shù)據(jù)處理:數(shù)據(jù)是存儲(chǔ)在硬盤(pán)上的,只不過(guò)需要經(jīng)常讀取的數(shù)據(jù)會(huì)被加載到內(nèi)存中,將數(shù)據(jù)存儲(chǔ)在物理內(nèi)存中,從而達(dá)到高速讀寫(xiě)。
成熟度與廣泛度:新興數(shù)據(jù)庫(kù),成熟度較低,Nosql數(shù)據(jù)庫(kù)中最為接近關(guān)系型數(shù)據(jù)庫(kù),比較完善的DB之一,適用人群不斷在增長(zhǎng)。
優(yōu)勢(shì):
快速!在適量級(jí)的內(nèi)存的Mongodb的性能是非常迅速的,它將熱數(shù)據(jù)存儲(chǔ)在物理內(nèi)存中,使得熱數(shù)據(jù)的讀寫(xiě)變得十分快,
高擴(kuò)展!
自身的Failover機(jī)制!
json的存儲(chǔ)格式!
缺點(diǎn):主要是無(wú)事物機(jī)制!

三、參考文章

  1. https://baike.baidu.com/item/NoSQL/8828247?fr=aladdin
  2. https://blog.csdn.net/qq_38314823/article/details/80903405
  3. https://www.cnblogs.com/printN/p/7199928.html
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • 一、MongoDB簡(jiǎn)介 1.概述 ? MongoDB是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù),由C++語(yǔ)言編寫(xiě)。旨在為WE...
    鄭元吉閱讀 1,130評(píng)論 0 2
  • MongoDB 1. MongoDB 是一個(gè)基于分布式文件存儲(chǔ)的數(shù)據(jù)庫(kù)。由 C++ 語(yǔ)言編寫(xiě)。旨在為 WEB 應(yīng)用...
    Kevinr閱讀 1,718評(píng)論 0 3
  • 本文轉(zhuǎn)自:http://blog.csdn.net/sunxianghuang/article/details/5...
    Andy_0801閱讀 1,485評(píng)論 0 8
  • 數(shù)據(jù)庫(kù)介紹及常見(jiàn)數(shù)據(jù)庫(kù)分類(lèi) 1.1數(shù)據(jù)庫(kù)介紹 1.1.1什么是數(shù)據(jù)庫(kù)? 簡(jiǎn)單的說(shuō),數(shù)據(jù)庫(kù)(因?yàn)镈atabase)就...
    SkTj閱讀 1,677評(píng)論 1 9
  • 一天就那么不緊不慢,馬馬虎虎的結(jié)束了。本以為一個(gè)人會(huì)更自在,事實(shí)未必。一個(gè)人的時(shí)候會(huì)更加慵懶。所以呀,群居動(dòng)物就不...
    蟬翼呵呵閱讀 305評(píng)論 2 4

友情鏈接更多精彩內(nèi)容