同樣是持久化,竟然有這么大的差別!
作為內(nèi)存數(shù)據(jù)庫,Redis 在數(shù)據(jù)存儲(chǔ)與讀取上的速度是毫不遜色的,這點(diǎn)毋庸置疑。但是對(duì)于內(nèi)存來說,斷電或遇到故障后數(shù)據(jù)就會(huì)丟失,這卻是一個(gè)無法回避的問題。令人欣慰的是,基于這樣的缺點(diǎn),Redis 也提供了不同的持久化方案。
各位看官請隨小萊接著往下看:

- 思維導(dǎo)圖 -
RDB持久化






AOF持久化






兩種持久化的優(yōu)/缺點(diǎn)
混合持久化
總結(jié)
將某一時(shí)刻的數(shù)據(jù)以二進(jìn)制形式寫入到磁盤里,服務(wù)重啟時(shí)檢測到對(duì)應(yīng)文件自動(dòng)加載進(jìn)行數(shù)據(jù)恢復(fù)。 有手動(dòng)觸發(fā)和自動(dòng)觸發(fā)兩種機(jī)制。
以文件追加的方式寫入客戶端執(zhí)行的寫命令。 數(shù)據(jù)恢復(fù)時(shí),通過創(chuàng)建偽客戶端的方式執(zhí)行命令,直到恢復(fù)完成。
在寫入的時(shí)候先把數(shù)據(jù)以 RDB 的形式寫入文件的開頭,再將后續(xù)的寫命令以 AOF 的格式追加到文件中。
有道無術(shù),術(shù)可成;有術(shù)無道,止于術(shù)
歡迎大家關(guān)注Java之道公眾號(hào)
好文章,我在看??
評(píng)論
圖片
表情
