File: adminui.replicationandsynchronization.xml

package info (click to toggle)
virtuoso-opensource 7.2.5.1%2Bdfsg1-0.3
  • links: PTS, VCS
  • area: main
  • in suites: bookworm
  • size: 285,240 kB
  • sloc: ansic: 641,220; sql: 490,413; xml: 269,570; java: 83,893; javascript: 79,900; cpp: 36,927; sh: 31,653; cs: 25,702; php: 12,690; yacc: 10,227; lex: 7,601; makefile: 7,129; jsp: 4,523; awk: 1,697; perl: 1,013; ruby: 1,003; python: 326
file content (189 lines) | stat: -rw-r--r-- 9,018 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
<?xml version="1.0" encoding="ISO-8859-1"?>
<!--
 -  
 -  This file is part of the OpenLink Software Virtuoso Open-Source (VOS)
 -  project.
 -  
 -  Copyright (C) 1998-2018 OpenLink Software
 -  
 -  This project is free software; you can redistribute it and/or modify it
 -  under the terms of the GNU General Public License as published by the
 -  Free Software Foundation; only version 2 of the License, dated June 1991.
 -  
 -  This program is distributed in the hope that it will be useful, but
 -  WITHOUT ANY WARRANTY; without even the implied warranty of
 -  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
 -  General Public License for more details.
 -  
 -  You should have received a copy of the GNU General Public License along
 -  with this program; if not, write to the Free Software Foundation, Inc.,
 -  51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA
 -  
 -  
-->

<sect2 id="replicationandsynchronization">
	<title>Replication &amp; Synchronization</title>

	<sect3 id="snapshotreplication">
		<title>Snapshot Replication</title>
<itemizedlist mark="bullet">		
<para>Conductor "Replication" offers manage Virtuoso Replication. You are offered with "Basic",
"Incremental", "Bidirectional Snapshot" and "Transactional" sub-tabs.
</para>
<itemizedlist mark="bullet">
	<listitem>From <emphasis>Replication/Basic/Query(Table select)to local</emphasis> to replicate local table(s)
to another data source click <emphasis>Create New Snapshot</emphasis> and follow the wizard.
</listitem>
	<listitem>
To copy the changes from the local table to the remote select some replications and
press <emphasis>Synchronize</emphasis>
</listitem>
	<listitem>
To drop the replication definition without dropping the destination table select some replications and press
<emphasis>Remove</emphasis>
</listitem>
	<listitem>
To drop the replication definition and the destination table select some replications and
press <emphasis>Remove &amp; Drop Remote</emphasis>
</listitem>
	<listitem>
To copy the changes from the local table to the remote automatically select some
replications, enter minutes in <emphasis>Scheduled Interval</emphasis> and
press <emphasis>Schedule</emphasis>
</listitem>
	<listitem>
To remove scheduled update select the replications enter 0 in "Scheduled Interval" and press Schedule
</listitem>
</itemizedlist>
        <figure float="1"><title>Snapshot Replication</title>
          <graphic fileref="ui/replt_ss_01.png"/></figure>
        <figure float="1"><title>Snapshot Replication</title>
          <graphic fileref="ui/replt_ss_add_01.png"/></figure>
        <figure float="1"><title>Snapshot Replication</title>
          <graphic fileref="ui/replt_ss_add_02.png"/></figure>
        <figure float="1"><title>Snapshot Replication</title>
          <graphic fileref="ui/replt_ss_add_03.png"/></figure>
        <figure float="1"><title>Snapshot Replication</title>
          <graphic fileref="ui/replt_ss_add_05.png"/></figure>
        <figure float="1"><title>Snapshot Replication</title>
          <graphic fileref="ui/replt_ss_add_06.png"/></figure>
</itemizedlist>          

	</sect3>

	<sect3 id="transactionalreplication">
		<title>Transactional Replication</title>
		<sect4 id="publications">
			<title>Publications</title>
<para>The Transaction Publication screen lists publications.  You can add, edit or 
remove publications as necessary, each time using the guide-lines of the wizard.</para>

        <figure float="1"><title>Transaction Replication - Publications</title>
          <graphic fileref="ui/repltranspub001.png"/></figure>

<simplelist>
 <member>Add a new publication by clicking on the <emphasis>Create</emphasis> button.</member>
 <member>Edit an existing publication by clicking on publication name.</member>
 <member>Remove publications by selecting their checkbox and clicking on the 
  <emphasis>Delete</emphasis> button.  Use caution, as this action cannot be reverted.</member>
</simplelist>

<para>When creating a new publication you must supply a name.  At this point 
you have the option to create an updateable publication - see the 
<link linkend="bidirtransrepl">Bi-Directional Transactional Replication</link> 
section for more details - which allows updates to come from subscribers 
rather than being limited to originating from the publisher only.</para>

        <figure float="1"><title>Transaction Replication - New Publication</title>
          <graphic fileref="ui/repltranspub002.png"/></figure>

                <figure float="1"><title>Transaction Replication - List of Publications</title>
          <graphic fileref="ui/repltranspub002a.png"/></figure>

<para>Once a new publication has been made you can add database objects to 
it using the <emphasis>Add ...</emphasis> buttons, or remove them by selecting 
their checkbox and using the <emphasis>Remove</emphasis> button.  To add a 
new table to the publication click on <emphasis>Add Table/Procedure</emphasis>.
Follow the wizard by choosing the appropriate database/catalog by clicking on its name, 
you will then be presented with the tables within it.</para>

        <figure float="1"><title>Transaction Replication - Publish Tables and Procedures</title>
          <graphic fileref="ui/repltranspub003.png"/></figure>

<para>Select the tables to publish using the checkboxes and press 
<emphasis>Add to Publication</emphasis> to add the tables and continue.</para>

<para>Once returned the publication screen, the published tables will be listed.  
Updatable publication will need conflict resolvers in case of conflicting data
arriving from a subscriber.  Click on the table name to manage the resolvers 
list.</para>

		<figure float="1"><title>Transaction Replication - Published Items</title>
          <graphic fileref="ui/repltranspub004.png"/></figure>

<para>Use the <emphasis>Add</emphasis>/<emphasis>Remove</emphasis> to add 
or remove selected resolvers.</para>

<para>Click on Publication Item -&gt; <emphasis>New Resolver</emphasis> to add a new resolver. You have the
following details to contend with:</para>

<itemizedlist>
    <listitem><emphasis>Name Suffix</emphasis>
      <para>Conflict resolver name suffix.</para></listitem>
    <listitem><emphasis>Order</emphasis>
      <para>Resolver order number.</para></listitem>
    <listitem><emphasis>Type</emphasis>
      <para>The resolver type, one of: Insert, Update, or Delete for resolving 
	  such SQL queries.</para></listitem>
    <listitem><emphasis>Class</emphasis>
      <para>The kind of resolver.  Class can be one of the following:</para> 
<simplelist>
  <member><emphasis>&#39;max&#39;</emphasis>
  row with maximum value of specified column wins</member>
  <member><emphasis>&#39;min&#39;</emphasis>
  row with minimum value of specified column wins</member>
  <member><emphasis>&#39;ave&#39;</emphasis>
  new value of specified column is calculated as: 
<computeroutput>current_val = (current_val + new_val) / 2</computeroutput></member>
  <member><emphasis>&#39;add&#39;</emphasis>
  new value of specified column is calculated as: 
<computeroutput>current_val = current_val + (new_val - old_val) </computeroutput></member>
  <member><emphasis>&#39;pub_wins&#39;</emphasis></member>
  <member><emphasis>&#39;custom&#39;</emphasis>
  publisher always wins</member>
  <member><emphasis>&#39;sub_wins&#39;</emphasis>
  subscriber always wins</member>
</simplelist>
</listitem>
    <listitem><emphasis>Column</emphasis>
      <para>This should specify the column name if <computeroutput>class</computeroutput> is not one of &#39;pub_wins&#39;, &#39;sub_wins&#39; or &#39;custom&#39;.</para></listitem>
</itemizedlist>

		<figure float="1"><title>Transaction Replication - Resolvers</title>
          <graphic fileref="ui/repltranspub006.png"/></figure>


    <para>Click on Publication -&gt; <emphasis>Advanced Options</emphasis> to set additional settings such as split size, default copy mode of publication item, etc.</para>
		<figure float="1"><title>Transaction Replication - Advanced</title>
          <graphic fileref="ui/repltranspub005.png"/></figure>

		</sect4>
		<sect4 id="subscriptions">
			<title>Subscriptions</title>
			<itemizedlist mark="bullet">
  <listitem>To add new subscription click at New Subscription and follow the wizard.</listitem>
  <listitem>Click Edit to change properties.</listitem>
  <listitem>To drop subscription click at link Drop.</listitem>
  <listitem>To synchronize subscription click the Sync button.</listitem>
  <listitem>To disconnect all subscriptions click at Disconnect all button.</listitem>
  <listitem>To load image file click at Load image button and follow the wizard.</listitem>
</itemizedlist>
        <figure float="1"><title>Transaction Replication - Subscription</title>
          <graphic fileref="ui/replt_trans_sub_01.png"/></figure>
        <figure float="1"><title>Transaction Replication - Subscription</title>
          <graphic fileref="ui/replt_trans_sub_02.png"/></figure>

		</sect4>
		</sect3>
</sect2>