MySql,redis,MongoDB對比

redis

優(yōu)點:

1 . 讀寫性能優(yōu)異
2.支持數(shù)據(jù)持久化,支持 AOF 和 RDB 兩種持久化方式
3.支持主從復(fù)制,主機會自動將數(shù)據(jù)同步到從機,可以進行讀寫分離。
4.數(shù)據(jù)結(jié)構(gòu)豐富:數(shù)據(jù)結(jié)構(gòu)豐富:支持 string、hash、set、sortedset、list 等數(shù)據(jù)結(jié)構(gòu)。

缺點:

1.Redis 不具備自動容錯和恢復(fù)功能,主機從機的宕機都會導(dǎo)致前端部分讀寫請求失敗,需要等待機器重啟或者手動切換前端的 IP 才能恢復(fù)。
2.主機宕機,宕機前有部分數(shù)據(jù)未能及時同步到從機,切換 IP 后還會引入數(shù)據(jù)不一致的問題,降低了系統(tǒng)的可用性。
3.Redis的主從復(fù)制采用全量復(fù)制,復(fù)制過程中主機會fork出一個子進程對內(nèi)存做一份快照,并將子進程的內(nèi)存快照保存為文件發(fā)送給從機,這一過程需要確保主機有足夠多的空余內(nèi)存。若快照文件較大,對集群的服務(wù)能力會產(chǎn)生較大的影響,而且復(fù)制過程是在從機新加入集群或者從機和主機網(wǎng)絡(luò)斷開重連時都會進行,也就是網(wǎng)絡(luò)波動都會造成主機和從機間的一次全量的數(shù)據(jù)復(fù)制,這對實際的系統(tǒng)運營造成了不小的麻煩。
4.Redis 較難支持在線擴容,在集群容量達到上限時在線擴容會變得很復(fù)雜。為避免這一問題,運維人員在系統(tǒng)上線時必須確保有足夠的空間,這對資源造成了很大的浪費。

MongoDB

優(yōu)點:

1.弱一致性(最終一致),更能保證用戶的訪問速度
2.文檔結(jié)構(gòu)的存儲方式,能夠更便捷的獲取數(shù)
3.內(nèi)置 GridFS,高效存儲二進制大對象 (比如照片和視頻)
4.支持復(fù)制集、主備、互為主備、自動分片等特性
5.動態(tài)查詢
6.全索引支持,擴展到內(nèi)部對象和內(nèi)嵌數(shù)組

缺點:

1.不支持事務(wù)
2.MongoDB 占用空間過大
3.維護工具不夠成熟

MySql

優(yōu)點:

1.體積小、速度快、總體擁有成本低,開源;
2.支持多種操作系統(tǒng);
3.是開源數(shù)據(jù)庫,提供的接口支持多種語言連接操作
4.MySql的核心程序采用完全的多線程編程。線程是輕量級的進程,它可以靈活地為用戶提供服務(wù),而不過多的系統(tǒng)資源。用多線程和C語言實現(xiàn)的MySql能很容易充分利用CPU;
5.MySql有一個非常靈活而且安全的權(quán)限和口令系統(tǒng)。當客戶與MySql服務(wù)器連接時,他們之間所有的口令傳送被加密,而且MySql支持主機認證;
6.支持ODBC for Windows, 支持所有的ODBC 2.5函數(shù)和其他許多函數(shù), 可以用Access連接MySql服務(wù)器, 使得應(yīng)用被擴展;
7.支持大型的數(shù)據(jù)庫, 可以方便地支持上千萬條記錄的數(shù)據(jù)庫。作為一個開放源代碼的數(shù)據(jù)庫,可以針對不同的應(yīng)用進行相應(yīng)的修改。
8.擁有一個非常快速而且穩(wěn)定的基于線程的內(nèi)存分配系統(tǒng),可以持續(xù)使用面不必擔心其穩(wěn)定性;
9.MySQL同時提供高度多樣性,能夠提供很多不同的使用者介面,包括命令行客戶端操作,網(wǎng)頁瀏覽器,以及各式各樣的程序語言介面,例如C+,Perl,Java,PHP,以及Python。你可以使用事先包裝好的客戶端,或者干脆自己寫一個合適的應(yīng)用程序。MySQL可用于Unix,Windows,以及OS/2等平臺,因此它可以用在個人電腦或者是服務(wù)器上;

缺點:

1.不支持熱備份;
2.MySQL最大的缺點是其安全系統(tǒng),主要是復(fù)雜而非標準,另外只有到調(diào)用mysqladmin來重讀用戶權(quán)限時才發(fā)生改變;
3.沒有一種存儲過程(Stored Procedure)語言,這是對習慣于企業(yè)級數(shù)據(jù)庫的程序員的最大限制;
4.MySQL的價格隨平臺和安裝方式變化。Linux的MySQL如果由用戶自己或系統(tǒng)管理員而不是第三方安裝則是免費的,第三方案則必須付許可費。Unix或Linux 自行安裝 免費 、Unix或Linux 第三方安裝 收費;

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

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

  • 今天看到一位朋友寫的mysql筆記總結(jié),覺得寫的很詳細很用心,這里轉(zhuǎn)載一下,供大家參考下,也希望大家能關(guān)注他原文地...
    信仰與初衷閱讀 4,826評論 0 30
  • 一、Redis高可用概述 在介紹Redis高可用之前,先說明一下在Redis的語境中高可用的含義。 我們知道,在w...
    空語閱讀 1,678評論 0 2
  • 企業(yè)級redis集群架構(gòu)的特點 海量數(shù)據(jù) 高并發(fā) 高可用 要達到高可用,持久化是不可減少的,持久化主要是做災(zāi)難恢復(fù)...
    lucode閱讀 2,280評論 0 7
  • feisky云計算、虛擬化與Linux技術(shù)筆記posts - 1014, comments - 298, trac...
    不排版閱讀 4,310評論 0 5
  • Nosql概述 在介紹Redis之前,首先先要介紹Nosql的概念。 互聯(lián)網(wǎng)架構(gòu)發(fā)展 在90年代的時候,計算機訪問...
    COKIDCC閱讀 752評論 0 1

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