Virtuoso Open-Source Wiki
Virtuoso Open-Source, OpenLink Data Spaces, and OpenLink Ajax Toolkit
Advanced Search
Help?
Location: / Dashboard / Main / VirtGraphReplication

Virtuoso Graph Replication Guide

Introduction

The following guide demonstrates how to replicate graphs from one Virtuoso instance to (an)other Virtuoso instance(s), using the RDF Replication Feature.

Terms used in this guide:

  • Host Virtuoso Instance, aka the publisher: the instance where we will insert RDF data into a Named Graph; then create a publication of this graph.
  • Destination Virtuoso Instance, aka the subscriber: the instance which will subscribe to the publication from the Host Virtuoso Instance.

The basic outline:

  1. First, use the Virtuoso Conductor on a Host Virtuoso Instance to publish a named graph.
  2. Then, use the Virtuoso Conductor on a Destination Virtuoso Instance to subscribe to deltas from the published graph.
  3. Finally, see how a change in the publisher's graph will appear in the subscriber's graph.
Note: If using a Virtuoso clustered server configuration and data is being loaded on multiple nodes of the cluster ie not just on the master node, the Virtuoso replication "ServerName" in the Virtuoso configuration files must be the same across all publisher nodes of the cluster and subscriptions only need to be made to the master node of the publishing cluster where the replication logs are maintained.

Replication Topologies

Typical replication topologies are Chains, Stars, and Bi-directional. These (and many others) can be achieved with Virtuoso, by setting each relevant node to "Publish" and/or "Subscribe".

Star Replication Topology

In a Star, there is one Publisher, and many Subscribers.

To set up a Star Replication:

  1. Configure Instance #1 to Publish.
  2. Configure Instance #2 to Subscribe to #1.
  3. Configure Instance #3 to Subscribe to #1.
  4. Repeat as necessary.

Example

Chain Replication Topology

In a Chain, there is one original Publisher, to which there is only one Subscriber. That Subscriber may also serve as a Publisher, again with only one Subscriber. The chain ends with a Subscriber which does not Publish.

To set up a Chain Replication:

  1. Configure Instance #1 to Publish.
  2. Configure Instance #2 to Subscribe to #1.
  3. Configure Instance #2 to Publish.
  4. Configure Instance #3 to Subscribe to #2.
  5. Configure Instance #3 to Publish.
  6. Repeat as necessary.

Examples

Bi-directional Replication Topology

In a bi-directional topology, there are 2 instances, each of which is both a Publisher and a Subscriber.

To set up a Bi-directional Replication:

  1. Configure Instance #2 to Publish.
  2. Configure Instance #1 to Subscribe to #2.
  3. Configure Instance #1 to Publish.
  4. Configure Instance #2 to Subscribe to #1.
  5. Repeat as necessary.

Example

Related

Powered By Virtuoso