管理の手引き


データベース区画間でのデータの再配分方法

データ再配分操作は、 データベースの中の指定されたノード・グループ内の表のセットに対して行われます。 (アプリケーションは、操作の実行前に、 カタログ・データベース区画でデータベースに接続する必要があります。) ユーティリティーはソース区分化マップとターゲット区分化マップの両方を使用して、 どのハッシュ区画が新しい場所 (すなわち、 新しいデータベース区画番号) に割り当てられているのかを識別します。 新しい場所に割り当てられた区画に対応する行はすべて、 ソース区分化マップに指定されたデータベース区画からターゲット区分化マップに指定されたデータベース区画に移動されます。

データ再配分ユーティリティーは、以下のことを行います。

  1. ターゲット区分化マップの新しい区分化マップ ID を取得し、 その ID を SYSCAT.PARTITIONMAP カタログ表に挿入する。
  2. ノード・グループの SYSCAT.NODEGROUPS カタログ表内の REBALANCE_PMAP_ID 列を、 新しい区分化マップ ID で更新する。
  3. 任意の新しいデータベース区画を SYSCAT.NODEGROUPDEF カタログ表に追加する。
  4. 除去したいデータベース区画があればその区画すべてについて、 SYSCAT.NODEGROUPDEF カタログ表内の IN_USE 列を D に設定する。
  5. カタログの更新を COMMIT する。
  6. 新しいデータベース区画すべてに対して、データベース・ファイルを作成する。
  7. ノード・グループ中のすべての表に対してそれぞれの表を基本とするデータを再配分する。 これについては、表のデータを再配分する方法で説明されています。
  8. データベース・ファイルを削除し、 SYSCAT.NODEGROUPDEF カタログ表の中から前に除去するものとしてマークを付けたデータベース区画の項目を削除する。
  9. SYSCAT.NODEGROUPS カタログ表内のノード・グループ・レコードを更新して、 PMAP_ID を値 REBALANCE_PMAP_ID に、REBALANCE_PMAP_ID を NULL に設定する。
  10. SYSCAT.PARTITIONMAPS カタログ・ビューから古い区分化マップを削除する。
  11. すべての変更を COMMIT する。


[ ページのトップ | 前ページ | 次ページ | 目次 | 索引 ]