首頁(yè)技術(shù)文章正文

mysql和mongoDB有什么區(qū)別?

更新時(shí)間:2021-05-10 來(lái)源:黑馬程序員 瀏覽量:

1577370495235_學(xué)IT就到黑馬程序員.gif

MySQL

1、關(guān)系型數(shù)據(jù)庫(kù)

2、在不同的引擎上有不同的存儲(chǔ)方式

3、查詢語(yǔ)句是使用傳統(tǒng)的sql語(yǔ)句,擁有較為成熟的體系,成熟度很高

4、開(kāi)源數(shù)據(jù)庫(kù)的份額在不斷增加,mysql的份額頁(yè)在持續(xù)增長(zhǎng)

5、缺點(diǎn)就是在海量數(shù)據(jù)處理的時(shí)候效率會(huì)顯著變慢

MongoDB

非關(guān)系型數(shù)據(jù)庫(kù)(Nosql),屬于文檔型數(shù)據(jù)庫(kù)。先解釋一下文檔的數(shù)據(jù)庫(kù),即可以存放xml、json、bson(即Binary-JSON)類型系那個(gè)的數(shù)據(jù)。這些數(shù)據(jù)具備自述性(selfdescribing),呈現(xiàn)分層的樹(shù)狀數(shù)據(jù)結(jié)構(gòu)。數(shù)據(jù)結(jié)構(gòu)由鍵值(key=>value)對(duì)組成MongoDB 是由C++語(yǔ)言編寫(xiě)的,主要是在為WEB應(yīng)用提供可擴(kuò)展的高性能數(shù)據(jù)存儲(chǔ)解決方案。

存儲(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)


MongoDB的優(yōu)勢(shì)

1、快速!在適量級(jí)的內(nèi)存的Mongodb的性能是非常迅速的,它將熱數(shù)據(jù)存儲(chǔ)在物理內(nèi)存中,使得熱數(shù)據(jù)的讀寫(xiě)變得十分快

2、高擴(kuò)展。

3、自身的Failover機(jī)制。

4、json的存儲(chǔ)格式。

5、內(nèi)置GridFS,支持大容量的存儲(chǔ)。

6、內(nèi)置Sharding,分片簡(jiǎn)單。

7、海量數(shù)據(jù)下,性能優(yōu)越。

8、支持自動(dòng)故障恢復(fù)(復(fù)制集)。


MongoDB的缺陷

1、不支持事務(wù)操作

2、占用空間過(guò)大。

3、MongoDB沒(méi)有如MySQL那樣成熟的維護(hù)工具。

4、無(wú)法進(jìn)行關(guān)聯(lián)表查詢,不適用于關(guān)系多的數(shù)據(jù)。

5、復(fù)雜聚合操作通過(guò)mapreduce創(chuàng)建,速度慢

6、模式自由,自由靈活的文件存儲(chǔ)格式帶來(lái)的數(shù)據(jù)錯(cuò)誤

7、MongoDB沒(méi)有如MySQL那樣成熟的維護(hù)工具,這對(duì)于開(kāi)發(fā)和IT運(yùn)營(yíng)都是個(gè)值得注意的地方


猜你喜歡:

python爬蟲(chóng)用什么數(shù)據(jù)庫(kù)好?Mysql和Mongdb哪個(gè)有優(yōu)勢(shì)?

pymysql如何鏈接Mysql數(shù)據(jù)庫(kù)?

MySQL和MariaDB有什么區(qū)別?

黑馬程序員前端培訓(xùn)課程

分享到:
在線咨詢 我要報(bào)名
和我們?cè)诰€交談!