ビジネス・インテリジェンス チュートリアル

レッスン 12. データウェアハウスの保守

このレッスンでは、索引の定義、RUNSTATS および REORG ユーティリティーの使用、およびウェアハウス・データベースの監視を行う方法を学習します。

データベースのために必要な保守の量は、データベースの活動または作業負荷の量と直接に関係します。このチュートリアルでは大量の活動を生成しないため、このレッスンでは、主として、実際のウェアハウス・データベースを使う際に使用できる DB2 ツールおよびユーティリティーについて説明します。


索引の作成

索引を作成すると、ウェアハウスのエンド・ユーザーのために照会を最適化することができます。 索引 はキーのセットであり、それぞれのキーは 1 つの表の行のセットを指します。 索引は、表データとは別個のオブジェクトです。データベース・マネージャーは、自動的に索引構造を作成し、それを保守します。索引から生成されるポインターによって、データへの直接パスが作成されるので、表の行に対してより効率的なアクセスが可能になります。

索引は、1 次キーまたは外部キーの定義時に作成されます。たとえば、レッスン 11, ターゲット表のキーの定義で CITY_ID を LOOKUP_MARKET 表の 1 次キーとして定義したときに、その表の索引が作成されました。

追加の索引を作成するには、以下の手順に従ってください。

  1. DB2 コントロール・センターから、「索引 (Indexes)」フォルダーが表示されるまで、 TUTWHS データベース内のオブジェクトを展開します。
  2. 「索引 (Indexes)」フォルダーを右クリックし、 「作成 (Create)」-> 「索引: ウィザードを使用 (Index Using Wizard)」をクリックします。

    「索引 (Index)」ウィザードがオープンします。

  3. ウィザードの詳細な指示に従って、新規の索引を作成します。

表統計の収集

表統計 は、表とその索引の物理および論理特性に関する情報を提供します。 DB2 ユニバーサル・データベースがデータにアクセスするための最適な方法を判別できるように、これらの統計を定期的に収集しなければなりません。表のデータに大量の変更が行われ、最後に収集した統計が実際の表データを反映していない場合は、データ・アクセスのパフォーマンスが低下する可能性があります。一般に、表のデータに大量の変更が行われた場合は、統計を更新したほうがよいでしょう。

LOOKUP_MARKET 表に関する統計を収集するには、以下の手順に従ってください。

  1. DB2 コントロール・センターから、LOOKUP_MARKET 表を右クリックし、 「統計の実行 (Run Statistics)」をクリックします。

    「統計の実行 (Run Statistics)」ウィンドウがオープンします。

  2. オンライン・ヘルプを使用して、表とその索引について収集する統計のレベルを決定します。
  3. 「共用レベル (Share level)」を使用して、統計の収集中にユーザーが持つアクセスのタイプを指定します。


    「SQL ステートメント (SQL Statement)」ページ上の GEOGRAPHIES SELECT ステートメント

  4. 「了解 (OK)」をクリックして、表統計の収集を開始します。

表の再編成

表を再編成すると、物理記憶域内で表が再配置されて、断片化が除去され、表がデータベース内で効率的に保管されるようになります。さらに、再編成を使用して、表の行が保管される順序を制御することもできます (通常、索引に基づいて)。

LOOKUP_MARKET 表を再編成するには、以下の手順に従ってください。

  1. DB2 コントロール・センターから、LOOKUP_MARKET 表を右クリックし、 「再編成 (Reorganize)」をクリックします。

    「表の再編成 (Reorganize Table)」ウィンドウがオープンします。

  2. 「システムの一時表スペースの使用 (Using system temporary table space)」フィールドで、再編成中の表が一時的に保管される表スペースの名前を指定します。表スペースを指定しない場合、表の一時コピーは、表が現在置かれているのと同じ表スペースに保管されます。
  3. 「索引の使用 (Using index)」フィールドで、表の行を再編成するために使用する索引を指定します。索引を指定しないと、表の行は順序に関係なく再編成されます。
  4. 表をすぐに再編成するには、 「すぐに再編成 (Reorganize Now)」をクリックします。再編成を特定の日時にスケジュールするには、 「スケジュール (Schedule)」をクリックします。


    「SQL ステートメント (SQL Statement)」ページ上の GEOGRAPHIES SELECT ステートメント


データベースの監視

パフォーマンス・モニターは、 DB2 ユニバーサル・データベースとそれが制御するデータの状態に関する情報を提供し、異常な状態に対して注意を促します。情報は一連のスナップショットとして提供され、それぞれのスナップショットはある時点のシステムとそのデータベースの状態を表します。スナップショットの頻度と、それぞれによって収集される情報の量を制御することができます。

パフォーマンス・モニターによって収集された情報は、パフォーマンス変数で戻されます。これらのパフォーマンス変数は、以下のような要素の定義済みセットです。

LOOKUP_MARKET 表を監視するには、以下の手順に従ってください。

  1. DB2 コントロール・センターから、LOOKUP_MARKET 表を右クリックし、 「パフォーマンス・モニター (Performance monitoring)」->「モニターの開始 (Start monitor)」をクリックします。

    「モニターの開始 (Start Monitor)」ウィンドウがオープンします。

  2. 「モニターの開始 (Start Monitor)」ウィンドウには、表レベルのスナップショットをとるためのパフォーマンス・モニターがリストされます。 「Default_for_table_level」 モニターを選択し、 「了解 (OK)」をクリックして、それを開始します。

    Default_for_table_level は、IBM 提供のモニターであり、表レベルの基本的なパフォーマンス関連情報を収集するように設計されています。

  3. LOOKUP_MARKET 表を右クリックし、「パフォーマンス・モニター (Performance monitoring)」->「モニター活動の表示 (Show monitor activity)」を選択します。

    「モニターの表示 (Show Monitor)」ノートブックがオープンします。

    「詳細 (Details)」ページには、モニターによって収集されているパフォーマンス変数と、スナップショットによって戻された値がリストされます。 Default_for_table_level モニターは、 30 秒ごとにスナップショット (「通常 (Regular)」サンプル・ボックスの場合) をとり、収集したデータをグラフ化しません。このモニターを独自の設定に調整することができます (たとえば、パフォーマンス変数のグラフ化またはスナップショット間隔の変更)。詳しくは、オンライン・ヘルプを参照してください。

  4. LOOKUP_MARKET 表に対する活動がない場合、「詳細 (Details)」ページの値はブランクのままになります。表の活動を生成するには、以下の手順に従ってください。
    1. 「コマンド・センター (Command Center)」をオープンします。
    2. 「スクリプト (Script)」ページで、以下のことを行います。
      1. connect to TUTWHS user userid using password を発行します。
      2. いくつかの SELECT * FROM userid.LOOKUP_MARKET ステートメントを発行します。ここで、userid は、 レッスン 2, ウェアハウス・データベースの作成でデータベースを作成するのに使用したユーザー ID です。
    3. 「モニターの表示 (Show Monitor)」ノートブックに戻ります。スナップショットがとられると、「1 秒あたりに読み取られた行数 (Rows Read per Second)」パフォーマンス変数の値に SQL ステートメントの活動が反映されます。
  5. 「モニターの表示 (Show Monitor)」ノートブックをクローズします。 LOOKUP_MARKET 表を右クリックし、「パフォーマンス・モニター (Performance monitoring)」->「モニターの停止 (Stop monitor)」をクリックします。 Default_for_table_level モニターが停止します。

このレッスンで行ったこと

このレッスンでは、索引を作成しました。さらに、LOOKUP_MARKET 表に関する統計を収集し、表の再編成と監視を行いました。次のレッスンでは、ウェアハウス・データベースのユーザーに表へのアクセスを許可します。


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