レプリケーションの種類Types of Replication

適用対象: ○SQL Server ○Azure SQL Database XAzure Synapse Analytics (SQL DW) XParallel Data Warehouse APPLIES TO: YesSQL Server YesAzure SQL Database NoAzure Synapse Analytics (SQL DW) NoParallel Data Warehouse

MicrosoftMicrosoft SQL ServerSQL Server では、以下の種類のレプリケーションを分散型アプリケーションで利用できます。SQL ServerSQL Server provides the following types of replication for use in distributed applications:

TypeType 説明Description
トランザクション レプリケーションTransactional replication パブリッシャーの変更は、発生すると (ほぼリアルタイムで) サブスクライバーに配信されます。Changes at the Publisher are delivered to the Subscriber as they occur (in near real time). データの変更は、パブリッシャーで発生したときと同じ順序で、同じトランザクションの境界内でサブスクライバーに適用されます。The data changes are applied to the Subscriber in the same order and within the same transaction boundaries as they occurred on the publisher.
マージ レプリケーションMerge replication データはパブリッシャーとサブスクライバーの両方で変更される可能性があり、トリガーを使用して追跡されます。Data can be changed on both the Publisher and Subscriber, and are tracked with triggers. サブスクライバーは、ネットワークに接続されたときにパブリッシャーと同期して、前回の同期以降にパブリッシャーとサブスクライバーの間で変更されたすべての行を交換します。The Subscriber synchronizes with the Publisher when connected to the network and exchanges all rows that have changed between the Publisher and Subscriber since the last time synchronization occurred.
スナップショット レプリケーションSnapshot replication パブリッシャーからサブスクライバーにスナップショットを適用します。これにより、特定の時点で出現するとおりにデータが配信され、データの更新は監視されません。Applies a snapshot from the Publisher to the Subscriber, which distributes data exactly as it appears at a specific moment in time, and does not monitor for updates to the data. 同期が発生するとデータ全体のスナップショットが作成され、サブスクライバーに送信されます。When synchronization occurs, the entire snapshot is generated and sent to Subscribers.
ピア ツー ピアPeer-to-peer ピア ツー ピア レプリケーションはトランザクション レプリケーションを基礎としており、トランザクション的に一貫性のある変更がほぼリアルタイムで複数のサーバー インスタンス間に反映されます。Built on the foundation of transactional replication, peer-to-peer replication propagates transactionally consistent changes in near real-time between multiple server instances.
双方向Bidirectional 双方向トランザクション レプリケーションとは、トランザクション レプリケーションの中でも特に、2 台のサーバーが互いに変更内容を交換し合うことのできるトポロジのことです。各サーバーはデータをパブリッシュすると共に、同じデータを含んだパブリケーションをもう一方のサーバーからサブスクライブします。Bidirectional transactional replication is a specific transactional replication topology that allows two servers to exchange changes with each other: each server publishes data and then subscribes to a publication with the same data from the other server.
更新可能なサブスクリプションUpdatable Subscriptions トランザクション レプリケーションの基礎に基づいて構築されており、更新可能なサブスクリプションのサブスクライバーでデータが更新されると、まずパブリッシャーに反映され、次に他のサブスクライバーに反映されます。Built on the foundation of transactional replication, when data is updated at a Subscriber for an updatable subscription, it is first propagated to the Publisher and then propagated to other Subscribers.

アプリケーションで使用するレプリケーションの種類は、物理的なレプリケーション環境、レプリケートするデータの種類と量、データをサブスクライバーで更新するかどうかなどの、さまざまな要因によって異なります。The type of replication you choose for an application depends on many factors, including the physical replication environment, the type and quantity of data to be replicated, and whether the data is updated at the Subscriber. 物理環境には、レプリケーションに関係するコンピューターの数と場所、これらのコンピューターがクライアント (ワークステーション、ラップトップ、またはハンドヘルド デバイス) なのかサーバーなのか、などが含まれます。The physical environment includes the number and location of computers involved in replication and whether these computers are clients (workstations, laptops, or handheld devices) or servers.

どの種類のレプリケーションも、通常、パブリッシュされたオブジェクトをパブリッシャーとサブスクライバー間で初期同期することから始まります。Each type of replication typically begins with an initial synchronization of the published objects between the Publisher and Subscribers. 初期同期は、 スナップショットを使用したレプリケーションで実行できます。スナップショットは、パブリケーションで指定されたすべてのオブジェクトおよびデータのコピーです。This initial synchronization can be performed by replication with a snapshot, which is a copy of all of the objects and data specified by a publication. 作成されたスナップショットはサブスクライバーに配信されます。After the snapshot is created, it is delivered to the Subscribers. アプリケーションによっては、スナップショット レプリケーションのみで十分なこともあります。For some applications, snapshot replication is all that is required. スナップショット レプリケーションだけでは不十分なアプリケーションでは、その後行われたデータ変更が、一定期間にわたって増分としてサブスクライバーに渡されることが重要です。For other types of applications, it is important that subsequent data changes flow to the Subscriber incrementally over time. また、アプリケーションによっては、サブスクライバーからパブリッシャーに変更を送り返す必要もあります。Some applications also require that changes flow from the Subscriber back to the Publisher. トランザクション レプリケーションおよびマージ レプリケーションには、このような種類のアプリケーション用のオプションがあります。Transactional replication and merge replication provide options for these types of applications.

参照See Also

レプリケーション エージェントの概要Replication Agents Overview