Redis持続化RDBとAOF(二):AOF
2545 ワード
Redis持続化RDBとAOF(一):RDB
AOF(append only file)は、実行されたコマンド(要素に変更されたコマンドのみを含む)をファイルに追加して記録し、redisが再起動されると、このファイルのコマンドをすべて実行してメモリにデータを復元する効果があります.
AOF永続化方式はデフォルトではオンではありません.プロファイルを変更する必要があります.
aofを開き、appendonly値をyesに変更します.
aofファイルには、実行した書き込みコマンド(要素を更新するコマンド)が記録されています.
2.2.1、aof生成の位置を配置する
2.2.2 aofファイルの修復
aofファイルに問題が発生した場合、独自の修復ツールでデータの大部分を修復できます.
2.2.3、操作命令を追加する規則
appendfsyncプロファイルは、追加のコマンドを保存する方法を構成します.
3.1、基本紹介の書き換え
このファイルには書かれたコマンドが記録されているので、このファイルは非常に大きいに違いありません.このとき書き換えメカニズムの使い道が来た.元appendonly.aofファイルの内容は以下の通りです.
書き換え後:
メリットは明らかです.私たちはいつ読み直すかを構成することができて、頻繁に読み返すのもよくありません.彼もFork(類似サービス)のサブプロセスでメモリのデータを読み、現在のデータでコマンドを生成する必要があります.例えば、ライブラリのkey 1の値が5であれば、set key 1 5というコマンドを生成し、どのように5に来ても構いません.また、書き換え中に古いappendonlyは読み取られなかった.aofファイル.
3.2、トリガ条件の設定
次の2つのパラメータは、現在のappendonlyを表しています.aofファイルは前回の2倍のサイズで64 Mより大きい場合に書き換えを実行します.
3.3、アクティブトリガコマンド
データ損失が少なく、実行されたコマンドが記録され、RDB方式のように条件の達成を待つ必要がなく、永続化が開始される.
1、aofのファイルはrdbファイルよりはるかに大きく、redisを再起動した後もrdbよりもデータの回復速度が遅く、1行のコマンドが実行されると思っています.2、永続IO操作3、書き換え操作が行われた場合、新たなデータが書き込まれるとブロックされる.できるだけ書き換えの頻度を減らすべきで、基礎の大きさの64 MBは小さすぎて、いくつか大きいことを設けるべきです
1、紹介
AOF(append only file)は、実行されたコマンド(要素に変更されたコマンドのみを含む)をファイルに追加して記録し、redisが再起動されると、このファイルのコマンドをすべて実行してメモリにデータを復元する効果があります.
2、AOF持久化方式
AOF永続化方式はデフォルトではオンではありません.プロファイルを変更する必要があります.
2.1、構成ファイル
aofを開き、appendonly値をyesに変更します.
############################## APPEND ONLY MODE ###############################
# aof , no
appendonly yes
2.2、AOFファイル紹介
aofファイルには、実行した書き込みコマンド(要素を更新するコマンド)が記録されています.
2.2.1、aof生成の位置を配置する
# ,
appendfilename "appendonly.aof"
2.2.2 aofファイルの修復
aofファイルに問題が発生した場合、独自の修復ツールでデータの大部分を修復できます.
redis-check-aof --fix aof
2.2.3、操作命令を追加する規則
appendfsyncプロファイルは、追加のコマンドを保存する方法を構成します.
# :
# always , ,
# everysec , , redis
# no
appendfsync everysec
3、書き換えメカニズム
3.1、基本紹介の書き換え
このファイルには書かれたコマンドが記録されているので、このファイルは非常に大きいに違いありません.このとき書き換えメカニズムの使い道が来た.元appendonly.aofファイルの内容は以下の通りです.
set key1 1
incr key1
incr key1
incr key1
書き換え後:
set key1 5
メリットは明らかです.私たちはいつ読み直すかを構成することができて、頻繁に読み返すのもよくありません.彼もFork(類似サービス)のサブプロセスでメモリのデータを読み、現在のデータでコマンドを生成する必要があります.例えば、ライブラリのkey 1の値が5であれば、set key 1 5というコマンドを生成し、どのように5に来ても構いません.また、書き換え中に古いappendonlyは読み取られなかった.aofファイル.
3.2、トリガ条件の設定
次の2つのパラメータは、現在のappendonlyを表しています.aofファイルは前回の2倍のサイズで64 Mより大きい場合に書き換えを実行します.
auto-aof-rewrite-percentage 100 # ,100
auto-aof-rewrite-min-size 64mb # , 64MB G
3.3、アクティブトリガコマンド
bgrewriteaof #
4、優勢
データ損失が少なく、実行されたコマンドが記録され、RDB方式のように条件の達成を待つ必要がなく、永続化が開始される.
5、劣勢
1、aofのファイルはrdbファイルよりはるかに大きく、redisを再起動した後もrdbよりもデータの回復速度が遅く、1行のコマンドが実行されると思っています.2、永続IO操作3、書き換え操作が行われた場合、新たなデータが書き込まれるとブロックされる.できるだけ書き換えの頻度を減らすべきで、基礎の大きさの64 MBは小さすぎて、いくつか大きいことを設けるべきです