Hitachi

ノンストップデータベース HiRDB Version 9 システム導入・設計ガイド(Windows(R)用)


12.18 共用表

HiRDB/パラレルサーバの場合,複数の表を結合するとき,それぞれの表が配置されたバックエンドサーバから表データを読み込み,別のバックエンドサーバで突き合わせ処理をします。そのため,複数のサーバを接続し,データを転送する処理が発生します。このとき,結合処理のための検索範囲のデータが一つのバックエンドサーバにあれば,そのデータを共用表として作成することで一つのバックエンドサーバで結合処理が完結します。共用表とは,共用RDエリアに格納された表で,すべてのバックエンドサーバから参照できる表のことです。また,共用表に定義するインデクスを,共用インデクスといいます。共用表を更新できるのは更新可能バックエンドサーバだけです。ほかのバックエンドサーバは参照専用バックエンドサーバになります。ただし,共用表の更新には制限があるため,原則としてオンライン中は更新しないでください。共用表の更新については,「共用表の操作」を参照してください。共用表を使用しない結合処理と使用した結合処理を次の図に示します。

図12‒30 共用表を使用しない結合処理

[図データ]

〔説明〕

表Aと表Bの結合処理をします。

BES1,2:表Aからデータを取り出し,突き合わせ処理のため,BES5とBES6にデータを転送します。

BES3,4:表Bからデータを取り出し,突き合わせ処理のため,BES5とBES6にデータを転送します。

BES5,6:突き合わせ,結合処理をしてFESにデータを転送します。

FES:結合処理した結果をマージして,ユーザに結果を返します。

図12‒31 共用表を使用した結合処理

[図データ]

〔説明〕

表Aと表Bの結合処理をします。共通データがある表Bを共用表とします。検索範囲はBES2,3のバックエンドサーバにあります。

BES1,4,5,6:特に処理はありません。

BES2,3:表A及び表Bからデータを取り出し,マージ処理をしてFESにデータを転送します。

FES:ユーザに結果を返します。

共用表及び共用インデクスはHiRDB/シングルサーバにも定義できます。これによって,HiRDB/パラレルサーバとSQL及びUAPの互換性を保つことができます。共用表及び共用インデクスはHiRDB/パラレルサーバで有効なので,通常はHiRDB/パラレルサーバで使用します。ここでは,HiRDB/パラレルサーバで共用表を使用する場合について説明します。HiRDB/シングルサーバで共用表を使用する場合については,「HiRDB/シングルサーバで共用表を使用する場合」を参照してください。

〈この節の構成〉