This HTML5 document contains 82 embedded RDF statements represented using HTML+Microdata notation.

The embedded RDF content will be recognized by any processor of HTML5 Microdata.

PrefixNamespace IRI
n60http://ods.openlinksw.com/dataspace/services/wiki/
n40http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd34.
n50http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd16.
n22http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd28.
n61http://rdfs.org/sioc/services#
n23http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd8.
n66http://localhost:8891/
n47http://ods.openlinksw.com/dataspace/dav#
dchttp://purl.org/dc/elements/1.1/
n24http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd25.
n49http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd11.
n27http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd6.
n44http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd1.
n12http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd23.
n13http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd37.
n59http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd19.
n64http://localhost:8892/
dctermshttp://purl.org/dc/terms/
n51http://ods.openlinksw.com/dataspace/person/owiki#
n52http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd17.
n8http://ods.openlinksw.com/dataspace/owiki/wiki/ODS/VirtGraphReplicationBiDirectional/sioc.
n57http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd20.
rdfshttp://www.w3.org/2000/01/rdf-schema#
rdfhttp://www.w3.org/1999/02/22-rdf-syntax-ns#
n42http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd32.
n53http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd14.
atomhttp://atomowl.org/ontologies/atomrdf#
n32http://ods.openlinksw.com/dataspace/person/dav#
n45http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd12.
n26http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd26.
xsdhhttp://www.w3.org/2001/XMLSchema#
n63http://localhost:8891/sparql:
n2http://ods.openlinksw.com/dataspace/owiki/wiki/ODS/
n15http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd41.
n25http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd9.
siochttp://rdfs.org/sioc/ns#
n37http://ods.openlinksw.com/dataspace/%28NULL%29/wiki/ODS/
n19http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd4.
n16http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd21.
n41http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd35.
n29http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd7.
n55http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd2.
n56http://localhost:8892/sparql:
n54http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd15.
n35http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd29.
n30http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd30.
oplhttp://www.openlinksw.com/schema/attribution#
n4http://virtuoso.openlinksw.com/download/
n6http://ods.openlinksw.com/dataspace/owiki/wiki/
n14http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd24.
n48http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd10.
n9http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd38.
n11http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd36.
n58http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd18.
n43http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd33.
n38http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/topo-bidirectional.
foafhttp://xmlns.com/foaf/0.1/
n17http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd5.
n33http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd31.
n46http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd13.
n20http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd27.
siocthttp://rdfs.org/sioc/types#
n39http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd3.
n10http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd39.
n34http://ods.openlinksw.com/dataspace/owiki#
n21http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd40.
n62http://ods.openlinksw.com/wiki/ODS/
n18http://ods.openlinksw.com/wiki/main/ODS/VirtGraphReplicationBiDirectional/bd22.
Subject Item
n32:this
foaf:made
n2:VirtGraphReplicationBiDirectional
Subject Item
n60:item
n61:services_of
n2:VirtGraphReplicationBiDirectional
Subject Item
n34:this
sioc:creator_of
n2:VirtGraphReplicationBiDirectional
Subject Item
n6:ODS
sioc:container_of
n2:VirtGraphReplicationBiDirectional
atom:entry
n2:VirtGraphReplicationBiDirectional
atom:contains
n2:VirtGraphReplicationBiDirectional
Subject Item
n2:VirtGraphReplicationBiDirectional
rdf:type
atom:Entry sioct:Comment
dcterms:created
2017-06-13T06:04:08.398970
dcterms:modified
2017-06-29T07:33:44.489528
rdfs:label
VirtGraphReplicationBiDirectional
foaf:maker
n32:this n51:this
dc:title
VirtGraphReplicationBiDirectional
opl:isDescribedUsing
n8:rdf
sioc:has_creator
n34:this n47:this
sioc:attachment
n9:png n10:png n11:png n12:png n13:png n14:png n15:png n16:png n17:png n18:png n19:png n20:png n21:png n22:png n23:png n24:png n25:png n26:png n27:png n29:png n30:png n33:png n35:png n38:graffle n39:png n40:png n38:png n41:png n42:png n43:png n44:png n45:png n46:png n48:png n49:png n50:png n52:png n53:png n54:png n55:png n57:png n58:png n59:png
sioc:content
%META:TOPICPARENT{name="VirtGraphReplication"}% ---+ Replication Example: 2-node Bi-directional Topology %TOC% ---++ Introduction The following Guide demonstrates the Virtuoso RDF Bi-directional Graph Replication, e.g., %BR%%BR%<img src="%ATTACHURLPATH%/topo-bidirectional.png" />%BR%%BR% ---++ Prerequisites ---+++ Database INI Parameters Suppose there are 2 Virtuoso instances respectively with the following ini parameters values: 1. virtuoso1.ini: <verbatim> ... [Database] DatabaseFile = virtuoso1.db TransactionFile = virtuoso1.trx ErrorLogFile = virtuoso1.log ... [Parameters] ServerPort = 1111 SchedulerInterval = 1 ... [HTTPServer] ServerPort = 8891 ... [URIQA] DefaultHost = localhost:8891 ... [Replication] ServerName = db1 ... </verbatim> 1. virtuoso2.ini: <verbatim> ... [Database] DatabaseFile = virtuoso2.db TransactionFile = virtuoso2.trx ErrorLogFile = virtuoso2.log ... [Parameters] ServerPort = 1112 SchedulerInterval = 1 ... [HTTPServer] ServerPort = 8892 ... [URIQA] DefaultHost = localhost:8892 ... [Replication] ServerName = db2 ... </verbatim> ---+++ Database DSNs Create a System DSN for each of db1 and db2, with names db1 and db2 respectively, with the ODBC Administrator on your Virtuoso host (e.g., on Windows, *Start* menu -> *Control Panel* -> *Administrative Tools* -> <b>Data Sources (ODBC)</b>; on Mac OS X, <code><nowiki>/Applications/iODBC/iODBC Administrator.app</nowiki></code>; Administrators on Unix-like OS vary). ---+++ Install Conductor package On each of the 2 Virtuoso instances, install the [[http://virtuoso.openlinksw.com/download/][conductor_dav.vad]] package. ---++ Create Publication on db2 1. Go to http://localhost:8892/conductor and log in as dba 1. Go to Conductor -> Replication -> Transactional -> Publications %BR%%BR%<img src="%ATTACHURLPATH%/bd1.png" />%BR%%BR% 1. Click <b>Enable RDF Publishing</b> 1 As result publication with the name <b>RDF Publication</b> should be created %BR%%BR%<img src="%ATTACHURLPATH%/bd2.png" />%BR%%BR% 1 Click the link which is the publication name. 1 You will be shown the publication items page %BR%%BR%<img src="%ATTACHURLPATH%/bd3.png" />%BR%%BR% 1 Enter for Graph IRI: <verbatim> http://example.org </verbatim> %BR%%BR%<img src="%ATTACHURLPATH%/bd4.png" />%BR%%BR% 1 Click Add New 1 The item will be created and shown in the list of items for the currently viewed publication. %BR%%BR%<img src="%ATTACHURLPATH%/bd5.png" />%BR%%BR% ---++Create subscription from db1 to db2's Publication 1 Log in at http://localhost:8891/conductor 1 Go to Replication -> Transactional -> Subscriptions %BR%%BR%<img src="%ATTACHURLPATH%/bd6.png" />%BR%%BR% 1 Click <b>New Subscription</b> %BR%%BR%<img src="%ATTACHURLPATH%/bd7.png" />%BR%%BR% 1 From the list of "Specify new data source" select Data Source db2 %BR%%BR%<img src="%ATTACHURLPATH%/bd8.png" />%BR%%BR% 1 Enter for db2 dba user credentials %BR%%BR%<img src="%ATTACHURLPATH%/bd9.png" />%BR%%BR% 1 Click "Add Data Source" 1 As result <b>db2</b> will be shown in the "Connected Data Sources" list. %BR%%BR%<img src="%ATTACHURLPATH%/bd10.png" />%BR%%BR% 1 Select <b>db2</b> the "Connected Data Sources" list and click "Publications list" %BR%%BR%<img src="%ATTACHURLPATH%/bd11.png" />%BR%%BR% 1 As result will be shown the list of available publications for the selected data source. Select the one with name "RDF Publication" and click "List Items". %BR%%BR%<img src="%ATTACHURLPATH%/bd12.png" />%BR%%BR% 1 As result will be shown the "Confirm subscription" page. %BR%%BR%<img src="%ATTACHURLPATH%/bd13.png" />%BR%%BR% 1 The sync interval by default is 10 minutes. For the testing purposes, we will change it to 1 minute. %BR%%BR%<img src="%ATTACHURLPATH%/bd14.png" />%BR%%BR% 1 Click "Subscribe" 1 The subscription will be created. %BR%%BR%<img src="%ATTACHURLPATH%/bd15.png" />%BR%%BR% ---++Create Publication on db1 1. Go to http://localhost:8891/conductor and log in as dba 1. Go to Conductor -> Replication -> Transactional -> Publications %BR%%BR%<img src="%ATTACHURLPATH%/bd16.png" />%BR%%BR% 1. Click <b>Enable RDF Publishing</b> 1 As result publication with the name <b>RDF Publication</b> should be created %BR%%BR%<img src="%ATTACHURLPATH%/bd17.png" />%BR%%BR% 1 Click the link which is the publication name. 1 You will be shown the publication items page %BR%%BR%<img src="%ATTACHURLPATH%/bd18.png" />%BR%%BR% 1 Enter for Graph IRI: <verbatim> http://example.org </verbatim> %BR%%BR%<img src="%ATTACHURLPATH%/bd19.png" />%BR%%BR% 1 Click Add New 1 The item will be created and shown in the list of items for the currently viewed publication. %BR%%BR%<img src="%ATTACHURLPATH%/bd20.png" />%BR%%BR% ---++Create subscription from db2 to db1's Publication 1 Log in at http://localhost:8892/conductor 1 Go to Replication -> Transactional -> Subscriptions %BR%%BR%<img src="%ATTACHURLPATH%/bd21.png" />%BR%%BR% 1 Click <b>New Subscription</b> %BR%%BR%<img src="%ATTACHURLPATH%/bd22.png" />%BR%%BR% 1 From the list of "Specify new data source" select Data Source db1 %BR%%BR%<img src="%ATTACHURLPATH%/bd23.png" />%BR%%BR% 1 Enter for db1 dba user credentials %BR%%BR%<img src="%ATTACHURLPATH%/bd24.png" />%BR%%BR% 1 Click "Add Data Source" %BR%%BR%<img src="%ATTACHURLPATH%/bd25.png" />%BR%%BR% 1 As result <b>db1</b> will be shown in the "Connected Data Sources" list. Select it and click "Publications list" %BR%%BR%<img src="%ATTACHURLPATH%/bd26.png" />%BR%%BR% 1 As result will be shown the list of available publications for the selected data source. Select the one with name "RDF Publication" and click "List Items". %BR%%BR%<img src="%ATTACHURLPATH%/bd27.png" />%BR%%BR% 1 As result will be shown the "Confirm subscription" page. %BR%%BR%<img src="%ATTACHURLPATH%/bd28.png" />%BR%%BR% 1 The sync interval by default is 10 minutes. For the testing purposes, we will change it to 1 minute. %BR%%BR%<img src="%ATTACHURLPATH%/bd29.png" />%BR%%BR% 1 Click "Subscribe" 1 The subscription will be created. %BR%%BR%<img src="%ATTACHURLPATH%/bd30.png" />%BR%%BR% ---++Insert Data into a Named Graph on the db2 Virtuoso Instance 1. Log in at http://localhost:8892/conductor 1 Go to Linked Data -> Quad Store Upload %BR%%BR%<img src="%ATTACHURLPATH%/bd31.png" />%BR%%BR% 1 In the shown form: 1 Tick the box for <b>Resource URL</b> and enter your resource URL, e.g.: <verbatim> http://www.openlinksw.com/dataspace/person/kidehen@openlinksw.com#this </verbatim> 1 Enter for Named Graph IRI: <verbatim> http://example.org </verbatim> %BR%%BR%<img src="%ATTACHURLPATH%/bd32.png" />%BR%%BR% 1 Click Upload 1 A successful upload will result in a shown message. %BR%%BR%<img src="%ATTACHURLPATH%/bd33.png" />%BR%%BR% 1 Check the count of the inserted triples by executing a query like the following against the SPARQL endpoint, http://localhost:8892/sparql: <verbatim> SELECT COUNT(*) FROM <http://example.org> WHERE { ?s ?p ?o } </verbatim> %BR%%BR%<img src="%ATTACHURLPATH%/bd34.png" />%BR%%BR% 1 Should return <b>57</b> as total. %BR%%BR%<img src="%ATTACHURLPATH%/bd35.png" />%BR%%BR% ---++Check data on the Destination instance db1 1 To check the starting count, execute from db1's SPARQL Endpoint: <verbatim> SELECT COUNT(*) FROM <http://example.org> WHERE { ?s ?p ?o } </verbatim> 1 Should return <b>57</b> as total. %BR%%BR%<img src="%ATTACHURLPATH%/bd35.png" />%BR%%BR% ---++Add new data on db2 1 Disconnect db1. 1 On the Host Virtuoso Instance db2 go to Conductor -> Database -> Interactive SQL enter the following statement: <verbatim> SPARQL INSERT INTO GRAPH <http://example.org> { <http://www.openlinksw.com/dataspace/person/kidehen@openlinksw.com#this> <http://xmlns.com/foaf/0.1/interest> <http://dbpedia.org/resource/Web_Services> } ; </verbatim> %BR%%BR%<img src="%ATTACHURLPATH%/bd36.png" />%BR%%BR% 1 Click "Execute" 1 As result the triples will be inserted %BR%%BR%<img src="%ATTACHURLPATH%/bd37.png" />%BR%%BR% 1 Check the count of the destination instance graph's triples by executing the following query like against the SPARQL endpoint, http://localhost:8892/sparql: <verbatim> SELECT COUNT(*) FROM <http://example.org> WHERE { ?s ?p ?o } </verbatim> 1 Should return <b>58</b> as total. %BR%%BR%<img src="%ATTACHURLPATH%/bd38.png" />%BR%%BR% ---++Check data on the Destination instance db1 1 Start instance db1 1 To confirm that the triple count has increased by the number of inserted triples, execute the following statement on db1's SPARQL Endpoint: <verbatim> SELECT COUNT(*) FROM <http://example.org> WHERE { ?s ?p ?o } </verbatim> 1 Should return <b>58</b> as total. %BR%%BR%<img src="%ATTACHURLPATH%/bd38.png" />%BR%%BR% ---++Add new data on db1 1 Disconnect db2. 1 On the Host Virtuoso Instance db1 go to Conductor -> Database -> Interactive SQL enter the following statement: <verbatim> SPARQL INSERT INTO GRAPH <http://example.org> { <http://www.openlinksw.com/dataspace/person/kidehen@openlinksw.com#this> <http://xmlns.com/foaf/0.1/interest> <http://dbpedia.org/resource/Web_Clients> } ; SPARQL INSERT INTO GRAPH <http://example.org> { <http://www.openlinksw.com/dataspace/person/kidehen@openlinksw.com#this> <http://xmlns.com/foaf/0.1/interest> <http://dbpedia.org/resource/SPARQL> } ; </verbatim> %BR%%BR%<img src="%ATTACHURLPATH%/bd39.png" />%BR%%BR% 1 Click "Execute" 1 As result the triples will be inserted %BR%%BR%<img src="%ATTACHURLPATH%/bd40.png" />%BR%%BR% 1 Check the count of the destination instance graph's triples by executing the following query like against the SPARQL endpoint, http://localhost:8891/sparql: <verbatim> SELECT COUNT(*) FROM <http://example.org> WHERE { ?s ?p ?o } </verbatim> 1 Should return <b>60</b> as total. %BR%%BR%<img src="%ATTACHURLPATH%/bd41.png" />%BR%%BR% ---++Check data on the Destination instance db2 1 Start instance db2 1 To confirm that the triple count has increased by the number of inserted triples, execute the following statement on db2's SPARQL Endpoint: <verbatim> SELECT COUNT(*) FROM <http://example.org> WHERE { ?s ?p ?o } </verbatim> 1 Should return <b>60</b> as total. %BR%%BR%<img src="%ATTACHURLPATH%/bd41.png" />%BR%%BR% ---++Related * [[VirtGraphReplicationStar][Replication Example: Star Topology]] * [[VirtGraphReplicationChain][Replication Example: Chain Topology]] * [[VirtGraphReplicationPSQL][Set up RDF Replication via procedure calls]] * [[http://ods.openlinksw.com/wiki/ODS/VirtPubSubHub][Example of Linked Data Usage of PubSubHubbub Implementation]] * [[VirtRdfReplScenarios][Exploit Virtuoso's Replication Functionality Web based Solutions]]
sioc:id
d8aa3eed31e646ad2074183711c9140e
sioc:link
n2:VirtGraphReplicationBiDirectional
sioc:has_container
n6:ODS
n61:has_services
n60:item
atom:title
VirtGraphReplicationBiDirectional
sioc:links_to
n4: n37:VirtGraphReplicationPSQL n37:VirtGraphReplicationStar n37:VirtGraphReplicationChain n56: n62:VirtPubSubHub n63: n64:conductor n37:VirtRdfReplScenarios n66:conductor
atom:source
n6:ODS
atom:author
n32:this
atom:published
2017-06-13T06:04:08Z
atom:updated
2017-06-29T07:33:44Z
sioc:topic
n6:ODS
Subject Item
n47:this
sioc:creator_of
n2:VirtGraphReplicationBiDirectional