レプリケーションとは

レプリケーションとは

一般的にレプリケーションとは、
データをリアルタイムに複製することをいいます。
複製をLANやインターネット経由で行えば物理的に異なるサーバへバックアップをリアルタイムにとるということになります。
またシステム自体の複製をとるので本番系と同等のサーバが必要になります
本番系と同等のサーバに複製しているため、
本番系が障害で停止した場合でも複製した予備系のシステムでサービスの継続が可能になります。

レプリケーションの目的

レプリケーションの目的は主に

  • 障害対策
  • 負荷分散

です。

障害対策については,はじめのレプリケーションの説明通りリアルタイムのバックアップとして使えます。
ですので本番系が障害で停止した複製したシステムでサービスの継続を行えます。

負荷分散については、予備で複製したものを使わないのを使用して負荷分散を行います。
例えばDBならば参照はすべて複製したほうに行うなどの方法で負荷分散ができます。

レプリケーションとバックアップの違い

バックアップとレプリケーションの大きな違いはリアルタイム性です。
レプリケーションはここまで説明してきたとおりリアルタイムに複製をおこないます。
それに対してバックアップは一定時間ごとに行います。
また、レプリケーションはリアルタイムのため基本的には過去のデータの保持はおこないません。
対してバックアップは数世代分のデータを保存しておくこともできます。

ここでレプリケーションのメリットとデメリットを考えてます。
メリットは

  • 本番系で障害が発生しても予備系でサービスの継続が可能
  • 負荷分散にも使える

デメリットは

  • 本番系がウィルス感染した場合予備系にも即座に影響してしまう
  • バックアップと違い過去に戻ることができない

これらからサービスの継続や負荷分散を考えるときにレプリケーションを用いるとよいのかなと思います。
またデータ自体の保存や過去をデータを保存しておきたいなどの場合はバックアップになるのかなと思います。

おわりに

この記事はほぼサーバなどを触ったことがない人物が学んだことを整理するために書いていますので間違いなどが多々あると思います。間違いなどありましたら是非コメントなどで教えていただけると幸いです。