那曲檬骨新材料有限公司

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

Redis持久化機制介紹

麥辣雞腿堡 ? 來源:程序員庫森 ? 作者:程序員庫森 ? 2023-10-09 11:44 ? 次閱讀

Redis持久化機制?

為了能夠重用Redis數據,或者防止系統故障,我們需要將Redis中的數據寫入到磁盤空間中,即持久化。Redis提供了兩種不同的持久化方法可以將數據存儲在磁盤中,一種叫快照RDB,另一種叫只追加文件AOF。

RDB

在指定的時間間隔內將內存中的數據集快照寫入磁盤(Snapshot),它恢復時是將快照文件直接讀到內存里。

優勢:適合大規模的數據恢復;對數據完整性和一致性要求不高

劣勢:在一定間隔時間做一次備份,所以如果Redis意外down掉的話,就會丟失最后一次快照后的所有修改。

AOF

以日志的形式來記錄每個寫操作,將Redis執行過的所有寫指令記錄下來(讀操作不記錄),只許追加文件但不可以改寫文件,Redis啟動之初會讀取該文件重新構建數據,換言之,Redis重啟的話就根據日志文件的內容將寫指令從前到后執行一次以完成數據的恢復工作。

AOF采用文件追加方式,文件會越來越大,為避免出現此種情況,新增了重寫機制,當AOF文件的大小超過所設定的閾值時,Redis就會啟動AOF文件的內容壓縮,只保留可以恢復數據的最小指令集。

優勢

每修改同步:appendfsync always 同步持久化,每次發生數據變更會被立即記錄到磁盤,性能較差但數據完整性比較好。

每秒同步:appendfsync everysec 異步操作,每秒記錄,如果一秒內宕機,有數據丟失。

不同步:appendfsync no 從不同步。

劣勢

相同數據集的數據而言aof文件要遠大于rdb文件,恢復速度慢于rdb。

aof運行效率要慢于rdb,每秒同步策略效率較好,不同步效率和rdb相同。

如何選擇RDB和AOF

如果是數據不那么敏感,且可以從其他地方重新生成補回的,那么可以關閉持久化。

如果是數據比較重要,不想再從其他地方獲取,且可以承受數分鐘的數據丟失,比如緩存等,那么可以只使用RDB。

如果是用做內存數據庫,要使用Redis的持久化,建議是RDB和AOF都開啟,或者定期執行bgsave做快照備份,RDB方式更適合做數據的備份,AOF可以保證數據的不丟失。

Redis4.0 對于持久化機制的優化

Redis4.0相對與3.X版本其中一個比較大的變化是4.0添加了新的混合持久化方式。

簡單的說:新的AOF文件前半段是RDB格式的全量數據后半段是AOF格式的增量數據,如下圖:

圖片

優勢:混合持久化結合了RDB持久化 和 AOF 持久化的優點,
由于絕大部分都是RDB格式,加載速度快,同時結合AOF,增量的數據以AOF方式保存了,數據更少的丟失。

劣勢:兼容性差,一旦開啟了混合持久化,在4.0之前版本都不識別該aof文件,同時由于前部分是RDB格式,閱讀性較差。

聲明:本文內容及配圖由入駐作者撰寫或者入駐合作網站授權轉載。文章觀點僅代表作者本人,不代表電子發燒友網立場。文章及其配圖僅供工程師學習之用,如有內容侵權或者其他違規問題,請聯系本站處理。 舉報投訴
  • 內存
    +關注

    關注

    8

    文章

    3055

    瀏覽量

    74327
  • 數據庫
    +關注

    關注

    7

    文章

    3846

    瀏覽量

    64685
  • Redis
    +關注

    關注

    0

    文章

    378

    瀏覽量

    10939
收藏 人收藏

    評論

    相關推薦

    Redis堅持持久方式概述

    Redis 持久
    發表于 09-25 17:04

    如何使得redis中的數據不再有

    ,原因是redis持久功能導致的,所謂的持久就是redis在系統關閉的時候把數據存儲到硬盤
    發表于 11-05 08:50

    Redis持久機制的實現原理和使用技巧

    Redis將數據存儲在內存中,宕機或重啟都會使內存數據全部丟失, Redis持久機制用來保證數據不會因為故障而丟失。
    的頭像 發表于 09-13 16:42 ?1038次閱讀

    談談Redis怎樣配置實現主從復制?

    之前總結過redis持久機制:深度剖析Redis持久
    發表于 01-31 11:31 ?685次閱讀

    Redis持久化分為兩種:RDB和AOF

    Redis持久,一個老掉牙的問題,但是面試官就是喜歡問。這也是我們學Redis必會的一個知識點。
    的頭像 發表于 02-21 09:22 ?732次閱讀

    Redis持久RDB方式介紹

    Redis持久 Redis是一個內存數據庫,為了保證數據的持久性,它提供了兩種持久
    的頭像 發表于 10-09 14:56 ?541次閱讀
    <b class='flag-5'>Redis</b><b class='flag-5'>持久</b><b class='flag-5'>化</b>RDB方式<b class='flag-5'>介紹</b>

    redis持久方式有幾種及配置

    Redis是一種內存數據庫,為了避免數據丟失,需要將數據持久到磁盤上。Redis提供了兩種持久
    的頭像 發表于 12-04 11:09 ?691次閱讀

    redis兩種持久方式的區別

    Redis是一款高性能、開源的鍵值存儲數據庫,它支持多種數據結構,并且具有高效的內存讀寫以及持久功能。Redis持久
    的頭像 發表于 12-04 11:12 ?556次閱讀

    redis持久方式RDB和AOF的區別

    Redis 是一個高性能的鍵值對數據庫,提供了兩種持久方式:RDB 和 AOF。RDB 是將 Redis 的數據快照保存到磁盤上,而 AOF 則是將
    的頭像 發表于 12-04 16:25 ?814次閱讀

    redis持久機制和如何實現持久

    Redis是一款高性能的非關系型數據庫,其持久機制是保證數據在重啟后仍能夠保存的關鍵。Redis提供了兩種方式來實現
    的頭像 發表于 12-05 10:02 ?497次閱讀

    redis持久機制優缺點

    Redis是一個基于內存的高性能鍵值存儲系統,它提供了多種持久機制來保證數據的可靠性。本文將詳細介紹R
    的頭像 發表于 12-05 10:03 ?766次閱讀

    redis里數據什么時候持久

    Redis是一種開源的高性能、非關系型內存數據庫,它使用了鍵值對存儲數據,并且支持多種數據結構。 Redis提供了持久機制,以確保在服務器
    的頭像 發表于 12-05 10:05 ?488次閱讀

    云容器redis持久配置

    丟失。 Redis提供了不同的持久機制,可以根據需要進行配置。本文將詳細介紹云容器中Redis
    的頭像 發表于 12-05 10:07 ?538次閱讀

    redis持久rdb和aof一起用好處

    Redis是一個流行的內存數據庫,它通過使用不同的持久機制來確保數據的持久性。RDB和AOF是Redi
    的頭像 發表于 12-05 10:17 ?808次閱讀

    Redis使用重要的兩個機制:Reids持久和主從復制

    今天這篇文章,我們一起了解 Redis 使用中非常重要的兩個機制:Reids 持久和主從復制。 我們都知道Redis是一個內存數據庫,在學
    的頭像 發表于 12-18 10:33 ?166次閱讀
    <b class='flag-5'>Redis</b>使用重要的兩個<b class='flag-5'>機制</b>:Reids<b class='flag-5'>持久</b><b class='flag-5'>化</b>和主從復制
    图木舒克市| 金百家乐官网博彩公司| 澳门玩百家乐官网赢1000万| 大中华百家乐官网的玩法技巧和规则| 百家乐网上投注作弊| 大发888主页| 百家乐官网天天赢钱| 闲和庄百家乐官网娱乐城| 百家乐楼梯缆| 千亿娱乐城注册| 百家乐官网投注软件有用吗| 百家乐街机游戏下载| 大发888官方df888gfxzylc8| 百家乐官网大小是什么| 百家乐官网玩法规| 国际娱百家乐的玩法技巧和规则 | 百家乐官网怎么看单| 阳宅24山流年吉凶方位| 威尼斯人娱乐城优惠| 百家乐官网软件官方| 三国百家乐官网娱乐城| 大发888娱乐城范本| 介绍百家乐官网赌博技巧| 澳门百家乐威尼斯| tt线上娱乐| 单耳房做生意的风水| 大发888游戏加速器| 百家乐官网庄闲路| 百家乐那个娱乐城信誉好| 马牌百家乐官网娱乐城| 百家乐鸿泰棋牌| 大富翁娱乐城| 百家乐庄闲机率| 娱网棋牌| 百家乐官网博彩吧| 鸿运国际娱乐| 百家乐投注打三断| 金臂百家乐| 谈谈百家乐赢钱技巧| 小金县| 百家乐實戰後二穩賺|