The Five DRDA Levels

 <  Day Day Up  >  

There are five levels within DRDA. Each level represents an increasing level of distributed support. Additionally, the levels reflect:

  • The number of requests and RDBMSs per unit of work

  • The number of RDBMSs per request

In order of increasing complexity, the five DRDA levels are

  • User -Assisted Distribution

  • Remote Request

  • Remote Unit of Work (RUW)

  • Distributed Unit of Work (DUW)

  • Distributed Request

Refer to Table 41.1 for a synopsis of the DRDA levels.

Table 41.1. The Five DRDA Levels

DRDA Level

SQL Stmts per UOW

DBMS per UOW

DBMS per SQL stmt

User-Assisted

-

-

-

Remote Request

1

1

1

Remote Unit of Work

>1

1

1

Distributed Unit of Work

>1

>1

1

Distributed Request

>1

>1

>1


The result of moving up the levels is additive. For example, distributed request capability implies distributed unit of work (which in turn implies remote unit of work). The reverse, however, is not implicitly true.

These levels are discussed at greater length in the following sections.

User-Assisted Distribution

User-assisted distribution is the simplest form of data distribution. However, under this DRDA level, the end user is aware of the distribution and participates in accomplishing the distributed access. To accomplish user-assisted distribution, the user must:

  • Extract the needed data from the original system

  • Load the extracted data to the requesting system

This is an intensive procedure that should not be taken lightly. As it involves replicated data, care must be taken to document the system of record and the date of extraction in case future modification is permitted.

Even given its many limitations, user-assisted distribution is useful for producing snapshot tables and satisfying one-time requests. However, to many, user-assisted distribution is not truly distributed data access. I tend to agree with them.

Oftentimes, user-assisted distribution is not even included in a formal discussion of DRDA. However, I include it here for completeness.

Remote Request

Remote request is the first level of true distribution within DRDA. When a DBMS supports DRDA remote request capability, a single SQL statement can be issued to read or modify a single remote RDBMS within a single unit of work.

Simply stated, remote request enables developers to be operating within one RDBMS, and refer to a different RDBMS. Furthermore, it is possible to utilize remote request capability to access a remote RDBMS, even if a local RDBMS is not being used.

DRDA remote request provides the capability of issuing only one SQL request per unit of work, and only one RDBMS per SQL request.

Remote Unit of Work

The remote unit of work (RUW) DRDA level adds to the functionality of remote request. RUW allows multiple SQL statements. However, the SQL can only read and/or modify a single remote RDBMS within a single unit of work.

To clarify, within the scope of a commit, RUW can access only one RDBMS.

So, DRDA remote unit of work provides the capability of issuing multiple SQL requests per unit of work, but still can access only one RDBMS per SQL request.

Distributed Unit of Work

Distributed unit of work (DUW) builds onto the functionality of remote unit of work. More than one RDBMS can be accessed per unit of work.

Simply stated, DRDA DUW enables multiple SQL statements to read and/or modify multiple RDBMSs within a single unit of work. However, only one RDBMS can be specified per SQL statement.

As with any unit of work, all of the SQL statements within the commit scope either succeed or fail. This requires a two-phase commit protocol to be established. Distributed two-phase commit is functionally equivalent to the two-phase commit DB2 performs when executing under CICS or IMS/TM. When a DUW program issues a COMMIT , the two-phase commit protocol must synchronize the COMMIT across all affected platforms.

Distributed Request

DRDA distributed request capability enables complete data distribution. Using distributed request, the DUW restriction of one RDBMS per SQL statement is removed. Additionally, multiple SQL requests, both distributed and non-distributed, can be contained within a single unit of work.

Simply stated, distributed request enables a single SQL statement to read and/or update multiple RDBMSs at the same time.

There are no RDBMS products that currently provide DRDA distributed request capability.

 <  Day Day Up  >  


DB2 Developers Guide
DB2 Developers Guide (5th Edition)
ISBN: 0672326132
EAN: 2147483647
Year: 2004
Pages: 388

flylib.com © 2008-2017.
If you may any questions please contact us: flylib@qtcs.net