DRDA(Distributed Relational Database Architecture)とは、IBMの分散データベース技術である。これは、APPCとTCP/IPの上でサポートされ、DRDA Application Requester(AR)と呼ばれる接続元と、DRDA Application Server(AS)と呼ばれる接続先との間でデータリンクを行うためのものである。つまり、OS/390やAS/400上のデータベースと相互接続する、あるいはOS/390やAS/400上のアプリケーションがDB2 UDBのデータを読み書きする、といったことが行える。DB2 UDBは、自らがAPPCやTCP/IP上でASになれるが、Windows/Unix環境からASに接続するためにはDB2 Connectが必要になる。
DB2 Connectには、ローカル接続しか許さないPersonal Edition(OS/2,Windowsのみ)と、ゲートウェイとして動作するEnterprise Editionが存在する。
接続先となるデータベースとプロトコルには以下のようなものがある:
サーバ | APPC | TCP/IP |
---|---|---|
DB2 UDB for OS/390 | Ver.6.1以降 | 同左 |
DB2 for OS/390 | Ver.5.1以降 | 同左 |
DB2 for OS/400 | Ver.2.1.1以降 | Ver.4.2以降 |
DB2 for MVS/ESA | Ver.3.1以降 | 未サポート |
DB2 for VSE & VM | Ver.5 | 未サポート |
SQL/DS | Ver.3.5 | 未サポート |
DB2 Common Server | Ver.2 | ? |
DB2 Universal Database | Ver.5以降 | Ver.5以降 |
注:DB2 Common ServerとDB2 Universal Databaseはオープン系(Unix/OS2/NT)で、DB2 UDB for OS/390・DB2 for OS/390・DB2 for MVS/ESAはS/390上で、それぞれ同一の製品ラインにあるものだが、バージョンアップによって名称が変わったもの。
DRDAで定義されるトランザクションには、以下の4種類がある。
APPCでDRDA接続を行う際に、2層コミットをサポートする接続を"protected conversation"といい、サポートしない接続を"unprotected conversation"という。LU6.2のみがprotected conversationをサポートする。
2層コミットを行うためには、Sync Point Manager(SPM)が必要になる。SPMは、各データベース上に存在するTransaction Manager(TM)と共同して動作し、トランザクションの原子性を保証する。
SPMは、AR・TM・DRDA-2 ASについては調整者として働き、DB2 UDB ASについては参加者として働く。