6.1.3 レプリケーション

データベースの内容をほかのデータベースに反映する機能のことを,レプリケーション機能といいます。レプリケーション機能を利用することで,DocumentBrokerが使用するデータベースのデータを抽出して,ほかのデータベースへ反映できます。

なお,使用できるデータベースシステムはHiRDBです。したがって,HiRDBのレプリケーション機能を利用します。HiRDBのレプリケーション機能を利用するには,HiRDBにHiRDB Datareplicatorを組み込む必要があります。HiRDBのレプリケーション機能については,マニュアル「HiRDB Datareplicator」を参照してください。

<この項の構成>
(1) レプリケーションの方法
(2) クラス,プロパティとデータベースの表,列との対応関係

(1) レプリケーションの方法

データベースシステムのレプリケーション機能を利用して,ほかのデータベースへデータを反映できます。レプリケーションの対象となる表やエリアなどの情報は,データベースの初期設定で使用したデータベース定義文を基に事前に用意してください。

(2) クラス,プロパティとデータベースの表,列との対応関係

データベースシステムの定義系SQLを利用して,クラス,プロパティとデータベースの表,列との対応が取れます。使用できるデータベースシステムは,HiRDBです。したがって,ここではHiRDBを利用する場合の対応関係について説明します。

DocumentBroker用データベース定義文の作成コマンド(EDMCrtSql)では,メタ情報ファイルに記述されているクラス識別子を,オブジェクトを格納するRDB表名として設定します。また,メタ情報ファイルに記述されているプロパティ識別子を表の各列名として設定します。

メタ情報ファイルでは,クラスの詳細情報を定義する「ClassDescription」やクラスのプロパティの詳細情報を定義する「PropertyDescription」の中に,クラスまたはプロパティ自身を説明する文字列を設定する項目「dmaProp_DescriptiveText」を指定できます。通常,「dmaProp_DescriptiveText」の値には,クラス識別子またはプロパティ識別子に対応して,ユーザが使用するクラス,プロパティの説明,または通称(意味のある名称)を指定します。これは,ユーザが定義情報ファイルを使用して,サブクラスおよびプロパティを追加する場合でも同様です。

EDMCrtSqlコマンドを実行すると,HiRDBの定義系SQLであるCOMMENTを使用して,「dmaProp_DescriptiveText」の値を各表および列の注釈としてデータベース定義文に出力します。ただし,データベース定義文に注釈を出力するには,EDMCrtSqlコマンドを実行する時に,-cオプションを指定する必要があります。EDMCrtSqlコマンドの使用方法については,「7.3 コマンドの文法」を参照してください。ユーザはHiRDBのディクショナリのSQL_TABLES表およびSQL_COLUMNS表を検索して,表や列に付けられている注釈を参照できます。

したがって,レプリケーション機能を利用する場合は,表や列に付けられた注釈を参照して,DocumentBrokerで作成したクラスおよびプロパティとの対応に注意してください。