スケーラブルデータベースサーバ HiRDB Version 8 解説(Windows(R)用)

[目次][用語][索引][前へ][次へ]

7.3.1 表の再編成

データを削除しても,そのデータを格納しているセグメント及びページは解放されません。このため,データの削除を繰り返すと,表中に無効領域が増えてデータの格納効率が悪くなり,データ量が増えていないのにRDエリアが容量不足になることがあります。

また,データの追加を繰り返すと,クラスタキーの値に近い場所のページにデータが格納されないため,データの入出力回数が増えます。このため,データを検索するときの性能が低下します。データベース再編成ユティリティで表の再編成を実行すると,データを再度格納し直すためこれらの現象を防げます。表の再編成を次の図に示します。

図7-9 表の再編成

[図データ]

〔説明〕
  • 表データをいったんアンロードファイルに吸い上げます。これを表データのアンロードといいます。その後,表にデータを格納し直します。これを表データのリロードといいます。これら全体の処理を表の再編成といいます。
  • 表にインデクスが定義されていると,データをリロードするときにインデクス情報ファイルにインデクス情報が出力されます。その情報を基にしてHiRDBがインデクスを一括作成します。これによって,インデクスも再編成されます。
<この項の構成>
(1) 表の再編成の実行単位
(2) 大量データを格納した表を再編成する場合
(3) 再編成時期予測機能

(1) 表の再編成の実行単位

表の再編成は次に示す単位で実行できます。

(a) 表単位の再編成

再編成処理を表単位に行います。通常はこの方法を実施してください。データベース状態解析ユティリティの結果から,表全体を再編成する必要がある場合に表単位の再編成を実行します。表単位の再編成を次の図に示します。

図7-10 表単位の再編成

[図データ]

〔説明〕
データベース再編成ユティリティの-tオプションで再編成対象の表を指定します。
(b) RDエリア単位の再編成

再編成処理をRDエリア単位に行います。この方法は表を横分割しているときだけ有効です。データベース状態解析ユティリティの結果から,横分割表のある部分だけを再編成すればよい場合にRDエリア単位の再編成を実行します。この場合,表単位の再編成に比べて,処理時間を短縮できます。RDエリア単位の再編成を次の図に示します。

図7-11 RDエリア単位の再編成

[図データ]

〔説明〕
データベース再編成ユティリティの-tオプションで再編成対象の表を指定して,かつ-rオプションで再編成対象のRDエリアを指定します。
(c) スキーマ単位の再編成

スキーマ内のすべての表を一括して再編成します。所有する表の再編成を一括して行う場合にスキーマ単位の再編成を実行します。スキーマ単位の再編成を次の図に示します。

図7-12 スキーマ単位の再編成

[図データ]

〔説明〕
データベース再編成ユティリティの-tオプションで再編成対象のスキーマの認可識別子を指定します。指定形式は-t 認可識別子.allです。

(2) 大量データを格納した表を再編成する場合

大量データを格納した表を再編成する場合,同期点指定の再編成を実施するかどうかを検討してください。

通常,表の再編成処理では全データの格納処理を完了するまでトランザクションを決着できません。このため,データベース再編成ユティリティ実行中はシンクポイントダンプを有効化できません。したがって,大量データの再編成処理中にHiRDBが異常終了すると,HiRDBの再開始処理に長い時間を必要とします。これを防ぐために,データ格納時(リロード処理時)に任意の件数で同期点を設定してトランザクションを決着できます。これを同期点指定の再編成といいます。

同期点指定の再編成をするには,データベース再編成ユティリティのoption文で同期点行数(何件データを格納したら同期点を取得するか)を指定してください。

なお,データベース作成ユティリティでも同期点指定ができます。これを同期点指定のデータロードといいます。

(3) 再編成時期予測機能

表やインデクスの再編成をするかどうか,又はRDエリアを拡張するかどうかは,出力されたメッセージや,pddbstコマンドの実行結果から,再編成する表はどれか,いつ再編成する必要があるかなどユーザが総合的に判断する必要がありました。そのため,再編成する必要がない表を再編成したり,出力されたメッセージを見逃したため,再編成する必要がある表を再編成しなかったりする可能性がありました。

これらの運用を簡単にするためにHiRDBが再編成時期の予測を行うようにしました。これを再編成時期予測機能といいます。再編成時期予測機能の概要を次の図に示します。

図7-13 再編成時期予測機能の概要

[図データ]

注※ RDエリアのメンテナンスが必要になる予定日をDBメンテナンス予定日といいます。

再編成時期の予測は,次に示す二つのフェーズに分かれています。

また,再編成時期予測機能には次の二つのレベルがあります。pddbstでのデータベースの解析結果を蓄積する時間は,予測レベル1は比較的短時間で実行できますが,予測レベル2は長時間掛かってしまうことがあります。

再編成時期予測機能については,マニュアル「HiRDB Version 8 システム運用ガイド」,及び「HiRDB Version 8 コマンドリファレンス」のデータベース状態解析ユティリティを参照してください。