ibm-information-center/dist/eclipse/plugins/i5OS.ic.sqlp_5.4.0.1/rbafydistribsupport.htm

109 lines
7.7 KiB
HTML

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="security" content="public" />
<meta name="Robots" content="index,follow" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta name="DC.Type" content="reference" />
<meta name="DC.Title" content="Distributed support" />
<meta name="abstract" content="DB2 UDB for iSeries supports two levels of distributed relational database." />
<meta name="description" content="DB2 UDB for iSeries supports two levels of distributed relational database." />
<meta name="DC.subject" content="distributed relational database, distributed unit of work, remote unit of work, DRDA level 1, DRDA level 2, distributed relational database, sync point manager, two-phase commit, protected resource, protected connection, unprotected resource, unprotected connection, two-phase commit, commitment control, sync point manager, protected resource" />
<meta name="keywords" content="distributed relational database, distributed unit of work, remote unit of work, DRDA level 1, DRDA level 2, distributed relational database, sync point manager, two-phase commit, protected resource, protected connection, unprotected resource, unprotected connection, two-phase commit, commitment control, sync point manager, protected resource" />
<meta name="DC.Relation" scheme="URI" content="rbafydrda.htm" />
<meta name="DC.Relation" scheme="URI" content="rbafydetconn.htm" />
<meta name="DC.Relation" scheme="URI" content="rbafydrdaconnect.htm" />
<meta name="DC.Relation" scheme="URI" content="rbafydrdaconnect2.htm" />
<meta name="DC.Relation" scheme="URI" content="rbafydrdaconnect3.htm" />
<meta name="DC.Relation" scheme="URI" content="rbafydrdaconnect4.htm" />
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="rbafydistribsupport" />
<meta name="DC.Language" content="en-us" />
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
<link rel="stylesheet" type="text/css" href="./ic.css" />
<title>Distributed support</title>
</head>
<body id="rbafydistribsupport"><a name="rbafydistribsupport"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Distributed support</h1>
<div><p><span class="keyword">DB2<sup>®</sup> UDB for iSeries™</span> supports
two levels of distributed relational database.</p>
<div class="section"><ul><li>Remote unit of work (RUW) <p>Remote unit of work is where the preparation
and running of SQL statements occurs at only one application server during
a unit of work. An activation group with an application process at an application
requester can connect to an application server and, within one or more units
of work, run any number of static or dynamic SQL statements that refer to
objects on the application server. Remote unit of work is also referred to
as DRDA<sup>®</sup> level
1.</p>
</li>
<li>Distributed unit of work (DUW) <p>Distributed unit of work is where the
preparation and running of SQL statements can occur at multiple applications
servers during a unit of work. However, a single SQL statement can only refer
to objects located at a single application server. Distributed unit of work
is also referred to as DRDA level 2.</p>
<p>Distributed unit of work allows:</p>
<ul><li>Update access to multiple application servers in one logical unit of work
<p>or</p>
</li>
<li>Update access to a single application server with read access to multiple
application servers, in one logical unit of work.</li>
</ul>
<p>Whether multiple application servers can be updated in a unit of work
is dependent on the existence of a sync point manager at the application requester,
sync point managers at the application servers, and two-phase commit protocol
support between the application requester and the application servers.</p>
<p>The
sync point manager is a system component that coordinates commit and rollback
operations among the participants in the two-phase commit protocol. When running
distributed updates, the sync point managers on the different systems cooperate
to ensure that resources reach a consistent state. The protocols and flows
used by sync point managers are also referred to as two-phase commit protocols.
If two-phase commit protocols will be used, the connection is a protected
resource; otherwise the connection is an unprotected resource.</p>
<p>The type
of data transport protocols used between systems affects whether the network
connection is protected or unprotected. Before V5R1, TCP/IP connections were
always unprotected; thus they can participate in a distributed unit of work
in only a limited way. In V5R1, full support for DUW with TCP/IP was added.
For example, if the first connection made from the program is to a pre-V5R1
server over TCP/IP, updates can be performed over it, but any subsequent connections,
even over APPC, will be read-only.</p>
<p>Note that when using Interactive
SQL, the first SQL connection is to the local system. Therefore, in the pre-V5R1
environment, in order to make updates to a remote system using TCP/IP, you
must do a RELEASE ALL followed by a COMMIT to end all SQL connections before
doing the CONNECT TO remote-tcp-system.</p>
</li>
</ul>
</div>
</div>
<div>
<ul class="ullinks">
<li class="ulchildlink"><strong><a href="rbafydetconn.htm">Determine connection type</a></strong><br />
When a remote connection is established it will use either an unprotected or protected network connection.</li>
<li class="ulchildlink"><strong><a href="rbafydrdaconnect.htm">Connect and commitment control restrictions</a></strong><br />
There are some restrictions on when you can connect using commitment control. These restrictions also apply to attempting to run statements using commitment control but the connection was established using COMMIT(*NONE).</li>
<li class="ulchildlink"><strong><a href="rbafydrdaconnect2.htm">Determine connection status</a></strong><br />
The CONNECT statement without parameters can be used to determine if the current connection is updatable or read-only for the current unit of work. A value of 1 or 2 will be returned in SQLERRD(3) in the SQLCA or DB2_CONNECTION_STATUS in the SQL diagnostic area.</li>
<li class="ulchildlink"><strong><a href="rbafydrdaconnect3.htm">Distributed unit of work connection considerations</a></strong><br />
When connecting in a distributed unit of work application, there are many considerations.</li>
<li class="ulchildlink"><strong><a href="rbafydrdaconnect4.htm">End connections</a></strong><br />
Because remote connections use resources, connections that are no longer going to be used should be ended as soon as possible. Connections can be ended implicitly or explicitly.</li>
</ul>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rbafydrda.htm" title="A distributed relational database consists of a set of SQL objects that are spread across interconnected computer systems.">Distributed relational database function and SQL</a></div>
</div>
</div>
</body>
</html>