SQL Serverの同期ができる。レプリケーションの仕組みと種類をご紹介!
障害に備えてバックアップを作成するなど、データの保護はシステム開発において必須といえます。
バックアップ以外にもデータを復旧させる手段は用意されており、その一例がレプリケーションです。レプリケーションとバックアップの違いを含めて、ここではレプリケーションの概要を解説していきます。
- システム
エンジニア - レプリケーションって初めて聞きました。具体的にどういったことを指すのでしょうか?
- プロジェクト
マネージャー - レプリケーションは「複製」ともいわれます。2基のハードウェアの状態を同期させて、片方がシステム障害を起こしても、もう片方ですぐにシステムを復旧させることができます。
レプリケーションとバックアップの違い
バックアップとレプリケーションはデータを守るという観点では同じですが、それぞれの意味は異なります。
バックアップ
バックアップは任意のタイミングで、データやシステム全体などを元ある場所とは別の場所に保存しておくことです。別の場所として、バックアップ専用のハードウェア(ストレージ)を準備して対応します。
任意の時点でのデータを復旧できますが、最終バックアップから障害が発生するまでのデータを復旧できない点は注意が必要です。またバックアップの取得は、システムが稼働していない夜間や休日にするのが一般的です。
レプリケーション
レプリケーションとは、複製(レプリカ)することです。「稼働系・待機系」といわれる2基のハードウェアを含めた環境を準備し、それらの間では、常に同期がとられている状態にします。そのため、稼働系のシステムに不具合が発生しても、すぐに待機系に切り替えることで、容易にシステムを復旧させることが可能です。
しかし、その一方で注意も必要です。稼働系のデータはリアルタイム(若干のデータ遅延あり)で待機系のデータを更新しますので、特定の状態に戻すといったことができません。誤って消去してしまったファイルなども、元の状態に戻すことは不可能です。
こうした理由から、レプリケーションと同時にバックアップを行うことも忘れてはいけません。
レプリケーションの仕組みをパブリッシングモデルで解説
レプリケーションの仕組みを理解するためには、それぞれの用語の意味を把握することが必要です。
※()内の文言はマイクロソフトの公式サイトと同様に、雑誌に例えた表現です。
-
- ■パブリッシャ(出版社)
ソースデータベースを保持しています。すべての変更内容をディストリビュータに送ります。
-
- ■ディストリビュータ(流通業者)
メタデータやトランザクションなどをディストリビューションデータベースに格納します。スナップショットレプリケーション、トランザクションレプリケーションにおいて、ディストリビュータは、重要な役割を担っています。通常はパブリッシャ(出版社)と同一のサーバに設定していますが、不可分散を行いたい場合には、別のサーバーを準備して対応することもあります。
-
- ■サブスクライバ(購読者)
データのコピーを保持し、変更を受け取ります。設定によっては、変更後のデータをパブリッシャに戻し、ほかのサブスクライバへ変更データをレプリケーションすることも可能です。
-
- ■アーティクル(記事)
テーブルやストアドプロシージャ、ビュー、ユーザー定義関数、フィルタされた部分を指します。
レプリケーションの種類
SQL Serverではいくつかの種類のレプリケーションが準備されています。
[table id=44 /]- システム
エンジニア - レプリケーションもバックアップもどちらも大切なのですね。顧客のデータを守るためにも、併用したいと思います。
- プロジェクト
マネージャー - データやアプリケーションを守るためには、二重三重と念には念を入れて対応を行うべきです。しっかりと意識しておきましょう。
レプリケーションも設定して、念には念を入れた対策を!
バックアップをこまめに行っているエンジニアも多いと思います。バックアップにプラスαとしてレプリケーションも追加して、システム障害に対応できる準備はしておきましょう。システムはどんなことで突然起動できなくなるか分かりません。できる対策は多めにしておいて損はないでしょう。
FEnet.NETナビ・.NETコラムは株式会社オープンアップシステムが運営しています。
株式会社オープンアップシステムはこんな会社です
秋葉原オフィスには株式会社オープンアップシステムをはじめグループのIT企業が集結!
数多くのエンジニアが集まります。
-
スマホアプリから業務系システムまで
スマホアプリから業務系システムまで開発案件多数。システムエンジニア・プログラマーとしての多彩なキャリアパスがあります。
-
充実した研修制度
毎年、IT技術のトレンドや社員の要望に合わせて、カリキュラムを刷新し展開しています。社内講師の丁寧なサポートを受けながら、自分のペースで学ぶことができます。
-
資格取得を応援
スキルアップしたい社員を応援するために資格取得一時金制度を設けています。受験料(実費)と合わせて資格レベルに合わせた最大10万円の一時金も支給しています。
-
東証プライム上場企業グループ
オープンアップシステムは東証プライム上場「株式会社オープンアップグループ」のグループ企業です。
安定した経営基盤とグループ間のスムーズな連携でコロナ禍でも安定した雇用を実現させています。
株式会社オープンアップシステムに興味を持った方へ
株式会社オープンアップシステムでは、開発系エンジニア・プログラマを募集しています。
年収をアップしたい!スキルアップしたい!大手の上流案件にチャレンジしたい!
まずは話だけでも聞いてみたい場合もOK。お気軽にご登録ください。
SQLServer新着案件New Job
-
蔦屋書新店オープンに関するアプリ開発/Oracle/東京都渋谷区/【WEB面談可】/在宅勤務
月給56万~59万円東京都渋谷区(神泉駅) -
資産運用会社向け残高管理システム運用保守/SQLServer/東京都中央区/【WEB面談可】
月給50万~60万円東京都中央区(銀座駅) -
資産運用会社向け残高管理システム開発のテスター/SQLServer/東京都中央区/【WEB面談可】
月給25万~35万円東京都中央区(銀座駅) -
放射線部門システムパッケージの運用保守/Oracle/東京都港区/【WEB面談可】
月給50万~60万円東京都港区(品川駅) -
放射線部門システムパッケージの開発のテスター/Oracle/東京都港区/【WEB面談可】
月給25万~35万円東京都港区(品川駅) -
営業フロントシステム運用保守/ASP.NET/東京都江東区/【WEB面談可】
月給50万~60万円東京都江東区(木場駅)