Not logged in : Login

About: VirtGraphReplicationPSQL     Goto   Sponge   NotDistinct   Permalink

An Entity of Type : atom:Entry, within Data Space : ods.openlinksw.com associated with source document(s)

AttributesValues
type
Date Created
Date Modified
label
  • VirtGraphReplicationPSQL
maker
Title
  • VirtGraphReplicationPSQL
isDescribedUsing
has creator
attachment
  • http://vos.openlinksw.com/wiki/main/VOS/VirtGraphReplicationPSQL/topo-chain.png
content
  • %META:TOPICPARENT{name="VirtGraphReplication"}% ---+How to set up RDF Replication via procedure calls %TOC% ---++ Introduction The following example shows how to use SQL procedures to set up Virtuoso RDF Graph Replication in a Chain Topology. %BR%%BR%%BR%%BR% This can also be done [[VirtGraphReplicationChain][through the HTTP-based Virtuoso Conductor]]. ---++Prerequisites ---+++Database INI Parameters Suppose there are 3 Virtuoso instances on the same machine. The first instance holds the master copy of the data and publishes its changes to all other instances that subscribe to this master. The second instance subscribes to the publication of the master copy, but also publishes all of these changes to any instance that subscribes to it. The third instance only subscribes to the publication of the second instance. Each of these 3 servers need unique ports and ServerName, DefaultHost for this replication scheme to work properly. Although not needed, this example also sets separate names for the database and related files. This results in the following ini parameters values (only changes are shown, the rest can remain default): 1. repl1/virtuoso.ini: ... [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-r ... 1. repl2/virtuoso.ini: ... [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-r ... 1. repl3/virtuoso.ini: ... [Database] DatabaseFile = virtuoso3.db TransactionFile = virtuoso3.trx ErrorLogFile = virtuoso3.log ... [Parameters] ServerPort = 1113 SchedulerInterval = 1 ... [HTTPServer] ServerPort = 8893 ... [URIQA] DefaultHost = localhost:8893 ... [Replication] ServerName = db3-r ... ---+++Database DSNs Use the ODBC Administrator on your Virtuoso host (e.g., on Windows, *Start* menu -> *Control Panel* -> *Administrative Tools* -> Data Sources (ODBC); on Mac OS X, /Applications/Utilities/OpenLink ODBC Administrator.app) to create a System DSN for each of db1, db2, db3, with names db1, db2 and db3, respectively. ---++Configure Publishers and Subscribers 1. Run the databases by starting start.sh, which has the following content: cd repl1 virtuoso -f & cd ../repl2 virtuoso -f & cd ../repl3 virtuoso -f & cd .. 1. Use the isql command to execute the following rep.sql file: -- -- connect to the first database which is only a publisher -- set DSN=localhost:1111; reconnect; -- -- start publishing the graph http://test.org --- DB.DBA.RDF_REPL_START(); DB.DBA.RDF_REPL_GRAPH_INS ('http://test.org'); -- -- connect to the second database in the chain, which is both a publisher and a subscriber -- set DSN=localhost:1112; reconnect; -- -- start publishing the graph http://test.org -- DB.DBA.RDF_REPL_START(); DB.DBA.RDF_REPL_GRAPH_INS ('http://test.org'); -- -- contact the first database -- repl_server ('db1-r', 'db1', 'localhost:1111'); -- -- subscribe to its RDF publication(s) -- repl_subscribe ('db1-r', '__rdf_repl', 'dav', 'dav', 'dba', 'dba'); -- -- bring the replication service online -- repl_sync_all(); -- -- and set scheduler to check every minute -- DB.DBA.SUB_SCHEDULE ('db1-r', '__rdf_repl', 1); -- -- connect to the third database in the chain, which is only a subscriber -- set DSN=localhost:1113; reconnect; -- -- uncomment next 2 commands if this database should also be a publisher -- --DB.DBA.RDF_REPL_START(); --DB.DBA.RDF_REPL_GRAPH_INS ('http://test.org'); -- -- contact second database -- repl_server ('db2-r', 'db2', 'localhost:1112'); -- -- subscribe to its RDF publication(s) -- repl_subscribe ('db2-r', '__rdf_repl', 'dav', 'dav', 'dba', 'dba'); -- -- bring the replication service online -- repl_sync_all(); -- -- and set schedule to check every minute -- DB.DBA.SUB_SCHEDULE ('db2-r', '__rdf_repl', 1); ---++Related * [[VirtGraphReplicationStar][Replication Example: Star Topology]] * [[VirtGraphReplicationChain][Replication Example: Chain Topology]] * [[VirtGraphReplicationBiDirectional][Replication Example: 2-node Bi-directional Topology]] * [[http://ods.openlinksw.com/wiki/ODS/VirtPubSubHub][Example of Linked Data Usage of PubSubHubbub Implementation]] * [[VirtRdfReplScenarios][Exploit Virtuoso's Replication Functionality Web based Solutions]]
id
  • 7dbee8b256b7e0f0d42b6e392928e487
link
has container
http://rdfs.org/si...ices#has_services
atom:title
  • VirtGraphReplicationPSQL
links to
atom:source
atom:author
atom:published
  • 2017-06-13T05:46:18Z
atom:updated
  • 2017-06-13T05:46:18Z
topic
is made of
is container of of
is link of
is http://rdfs.org/si...vices#services_of of
is links to of
is creator of of
is atom:entry of
is atom:contains of
Faceted Search & Find service v1.17_git132 as of May 12 2023


Alternative Linked Data Documents: iSPARQL | ODE     Content Formats:   [cxml] [csv]     RDF   [text] [turtle] [ld+json] [rdf+json] [rdf+xml]     ODATA   [atom+xml] [odata+json]     Microdata   [microdata+json] [html]    About   
This material is Open Knowledge   W3C Semantic Web Technology [RDF Data] Valid XHTML + RDFa
OpenLink Virtuoso version 08.03.3332 as of Sep 11 2024, on Linux (x86_64-generic-linux-glibc25), Single-Server Edition (15 GB total memory, 1 GB memory in use)
Data on this page belongs to its respective rights holders.
Virtuoso Faceted Browser Copyright © 2009-2024 OpenLink Software