最初のリンクを投稿:
https://www.cnblogs.com/mdxdjh/articles/6853109.html 紙は、より多くの記事を学びます
先に言えば、そこに使用Redisのメモリデータベースは、キーと値の形式で保存されているため、永続性を設定していない場合は全体的に再起動Redisのデータが失われた後、Redisのデータは、メモリに格納されているので、Redisのの持続性を開く必要Redisのが再起動したとき、あなたはディスクからデータを復元することができ、データをディスクに保存する機能。Redisのは1つがあり、持続する2つの方法を提供していますRDBの他は、永続AOFの永続性を(アペンドファイルのみ)
RDB :
原理は、持続的なディスクRDBにダンプするためにメモリタイミングのレイズのデータベースレコード。
RDBの永続性は、指定した時間内にデータセットの間隔メモリのスナップショットがディスクに書き込まれ、実際の動作は、子プロセスをfork一時ファイルに書き込まれたデータの最初のセット、成功裏に書き込み、その後、前のファイルを置き換えることを意味し、バイナリ圧縮ストレージ。
AOF :
原理は、ファイルに追加書き込みにレイズ操作ログ。AOFは、それぞれのサーバで処理ログレコードの形で存続し、クエリ操作が記録されていない、削除、書き込み、記録されているテキストが、あなたは、詳細な操作履歴を参照し、ファイルを開くことができます。
二つの方法の長所と短所
RDBが存在する利点は何ですか?
1)このようたら、その後、あなたの全体のRedisのデータベースは、ファイルのバックアップに最適です。一つだけのファイルを、含まれています。たとえば、最後のデータの24時間を時間ごとにアーカイブするつもりかもしれませんが、また、毎日のデータの最後の30日に1回アーカイブ。システムが壊滅的障害が発生した後に、このバックアップ戦略では、我々は非常に簡単に復元することができます。
2)災害復旧のために、RDBは非常に良い選択です。我々は非常に簡単に別のファイル圧縮すること、その後、他の記憶媒体に転送することができますので。
3)性能が最大化されています。プロセスのRedisのサービスのために、持続性の初めに、それは実行するだけの必要性は、あなたが大幅にサービスのIO動作の処理を避けることができるように、子供をforkし、その後、子供がこれらの永続的な作業が完了した後です。
データセットが大きい場合4)AOF機構と比較すると、RDB効率が高くなり始めます。
RDBとどのような弱点が存在しますか?
1)あなたはつまり、最大値はデータの損失を回避するために、データの高可用性を保証したい場合は、RDBは良い選択ではないでしょう。持続性のタイミングの前に、システムのダウンタイム現象一度、ディスク上にデータを書き込むための時間がなかったので失われます。
2)データセットが大きい場合、それは全体の数百ミリ秒の提供を停止するサーバ、あるいは1秒引き起こし得るので、もしフォークを介してRDB子プロセスが、データの永続化作業を支援するため。
AOFの利点、何をしますか?
1)。このメカニズムは、より高いデータセキュリティ、すなわち、データの永続性をもたらすことができます。Redisのは毎秒同期同期戦略、3を提供し、すべての変形及び同期は同期していません。実際には、非同期同期は違い、システムのダウンタイム現象一度、その後、数秒以内に変更されたデータが失われることで、その効率は非常に高く、毎秒完了です。そして、すべての同期を変更し、我々は、データの変更が即座にディスクに記録されますたびに発生同期の永続性とみなすことができます。このように効率が最低であることを予想されます。非同期に関しては、言うまでもなく、私たちはそれを理解して修正することができると思います。
2)。機構は、ログファイルの追加モードに書き込むためのログファイルの内容を乱すことなく、書き込みプロセス中のダウンタイムの現象は、既に存在する場合でも、使用されています。私たちは、この操作は半分しかデータが、システムのクラッシュを登場で書く場合は、私たちはRedisの-チェックAOFツールでデータの一貫性の問題を解決するために我々はできる、次回の起動時のRedisの前に、心配しないでください。
ログが大きすぎる場合3)、Redisのは、自動的に書き換えメカニズムを有効にすることができます。Redisのモードを追加するということはRedisのは、コマンドに変更されたものを記録するための新しいファイルを作成しながら、変更されたデータは、古いディスク・ファイルに書き込まれていきます。この期間中に実行されます。そのため、切り替え時に行われる書き換えデータのセキュリティをより良く保証することができます。
すべての変更を記録するための明確な、理解ログ・ファイルを含む4)。AOF形式。実際には、我々は、ファイルを介して再構成データを完了することができます。
AOFの欠点、何をしますか?
1)データセットの同じ数の場合、AOFはRDB文書ファイルよりも一般に大きいです。RDBスピード、大規模なデータを復旧AOFの回復の速度よりも速く設定されます。
2)同期化政策によって、作業効率上のAOFは、RDBにおけるよりも遅くなる傾向にあります。要するに、第二の戦略当たりの同期の効率が比較的高い、同期効率的かつ効率的なようRDBポリシーを無効にします。
どちらの選択基準、(システムは、高いキャッシュ・コヒーレンシと引き換えに、いくつかのパフォーマンスを犠牲にして喜んで見ているときAOF)、頻繁に操作を書くことが喜んでいたが、より高い性能と引き換えにバックアップを有効にしない、時間が節約手動で実行します、バックアップ(RDB)を行います。これは、さらにいくつかの最終的一貫性の平均値をRDBです。
実際には、永続的な支持体上でのRedisは非リレーショナルデータベースの欠点である、非常に良いではありません。