Skip to main content

SQL Serverレプリケーションの種類とコンポーネント

初めてのMySQLチューニング データベースは怖くない! (mamy1326) - builderscon tokyo 2017 (六月 2025)

初めてのMySQLチューニング データベースは怖くない! (mamy1326) - builderscon tokyo 2017 (六月 2025)
Anonim

SQL Serverのレプリケーションでは、データベース管理者は組織全体の複数のサーバーにデータを分散できます。組織にレプリケーションを実装するには、次のようなさまざまな理由が考えられます。

  • ロードバランシング。レプリケーションを使用すると、データを多数のサーバーに配布し、それらのサーバー間でクエリの負荷を分散できます。
  • オフライン処理。レプリケーションは、常にネットワークに接続されていないマシン上のデータベースからデータを操作することをサポートします。
  • 冗長性。レプリケーションを使用すると、処理負荷をすぐに拾うことができるフェールオーバーデータベースサーバーを構築できます。

どの複製シナリオにも2つの主要コンポーネントがあります。

  • 出版社 他のサーバーに提供するデータがあります。所与の複製スキームは、1つまたは複数の発行者を有することができる。
  • 購読者 データが変更されたときにパブリッシャから更新を受信するデータベースサーバーです。

単一のシステムがこれらの能力の両方で行動することを妨げるものは何もありません。実際、これはしばしば大規模な分散データベースシステムの設計です。

レプリケーションのSQL Serverサポート

Microsoft SQL Serverでは、3種類のデータベース複製がサポートされています。この記事では、これらのモデルのそれぞれについて簡単に紹介しますが、今後の記事ではさらに詳しく説明します。彼らです:

  • スナップショットレプリケーション その名が示すように行動する。パブリッシャは、レプリケートされたデータベース全体のスナップショットを取得し、サブスクライバと共有します。もちろん、これは時間とリソースを大量に消費するプロセスです。このため、ほとんどの管理者は、頻繁に変更されるデータベースに対して定期的にスナップショットレプリケーションを使用しません。スナップショットレプリケーションが一般的に使用されるシナリオは2つあります。まず、めったに変更されないデータベースに使用されます。次に、システム間のレプリケーションを確立するためのベースラインを設定するために使用され、将来の更新は、 トランザクション または マージレプリケーション .
  • トランザクションレプリケーション 定期的に変更されるデータベースに対して、より柔軟なソリューションを提供します。トランザクションレプリケーションでは、レプリケーションエージェントはパブリッシャをデータベースの変更について監視し、その変更をサブスクライバに送信します。この送信は、直ちにまたは定期的に行うことができる。
  • マージレプリケーション パブリッシャとサブスクライバはデータベースを個別に変更できます。両方のエンティティは、アクティブなネットワーク接続なしで動作することができます。それらが再接続されると、マージレプリケーションエージェントは両方のデータセットの変更をチェックし、それに応じて各データベースを変更します。変更が競合した場合、エージェントは事前定義の競合解消アルゴリズムを使用して適切なデータを決定します。マージレプリケーションは、ラップトップユーザーやパブリッシャに継続的に接続できないユーザーによってよく使用されます。

    これらの複製技法はそれぞれ有用な目的を果たし、特定のデータベースシナリオに適しています。

    SQL Server 2016を使用している場合は、複製のニーズに基づいてエディションを選択します。各エディションには、レプリケーションのサポートに関して異なる機能があります。

    • サブスクライバのサポートのみ: エクスプレス、エクスプレスツール または 高度なサービス そしてその ウェブ エディションは、レプリケーションクライアントとしてのみ機能することができる限られたレプリケーション機能を提供します。
    • 完全なパブリッシャーとサブスクライバーのサポート: 標準 そして 企業 Oracleパブリッシング、ピアツーピア・トランザクション・レプリケーション、および更新可能なサブスクリプションとしてのトランザクション・レプリケーションを含むエンタープライズの完全なサポートを提供します。

    この点で間違いなく認識しているように、SQL Serverのレプリケーション機能により、データベース管理者はエンタープライズ環境のデータベースを管理および拡張するための強力なツールを利用できます。