データベース・オブジェクトが最後に使用された日付の特定

オブジェクトが最後に使用された日付は、 最終参照日 (または最終使用日) として示されます。 最終参照日は、 索引、パッケージ、表、表データ・パーティション、およびマテリアライズ照会表 (MQT) について 取得できます。 最終参照日を使用して、 長期間使用されていないオブジェクトで、 削除する候補として検討しても良いオブジェクトを特定できます。
最終参照日は、オブジェクトごとに対応するカタログ表の LASTUSED 列に格納されており、 その表に対するカタログ・ビューからアクセス可能です。 カタログ内の使用情報は、データベース・カタログ・パーティションで実行される、db2lused (LASTUSED デーモン) というエンジン・ディスパッチ可能単位 (EDU) によって更新されます。 15 分ごとに、LASTUSED デーモンはすべてのパーティションのすべてのオブジェクトに関する使用情報を収集し、対応するカタログ表内の LASTUSED 列を更新して、ディスクに情報を書き込みます。 1 つのオブジェクトに関するカタログ項目は最大でも 1 日に 1 回更新されます。つまり、24 時間のインターバルが経過するまで、同じオブジェクトは再検査されません。 データベース・サーバーのパフォーマンス上の影響を最小化するために 15 分のインターバルが選ばれました。ユーザーはこれを構成できません。 最後の参照日の更新は非同期的に実行されるため、オブジェクト・アクセスはカタログ内に直ちには記録されません。
注: カタログ表内の対応する行がロックされている場合、使用情報の更新は、次の 15 分の収集間隔まで据え置かれる可能性があります。 さらに、データベースが非アクティブ化されている場合、非アクティブ化の前に LASTUSED デーモンによって収集されなかった使用情報 (例えば、デーモンによる最後のポーリング以降に初めてアクセスされたオブジェクト) をディスクに書き込むことはできません。 このフィーチャーを適切に動作させるには、データベースを明示的に活動化してください。
オブジェクトが長期間 (例えば数カ月) 使用されていない場合に、 最終参照日は有用です。 以下のように、最終参照日は有用です。
  • 表および表データ・パーティション: 不使用スペースを再利用する機会を特定するのに役立ちます。
  • 索引: 不使用スペースを再利用する機会を特定、および不必要な挿入や保守を回避するのに役立ち、また 検討すべき索引選択の回数が減少することによってコンパイル時間が改善されます。
  • パッケージ: 解放することが可能な不使用パッケージ・バージョンの検出に役立ちます。
  • MQT: 不使用 MQT の検出、不使用スペースの再利用、または MQT が使用されない原因の調査や理解に役立ちます。
以下の例では、最終参照日が有用となる特定のシナリオについて いくつか説明します。
  • スペースおよび保守時間を節約するための機会を特定するために、 SYSCAT.INDEXES カタログ・ビューの LASTUSED 列をチェックすることによって、 索引の最終使用に関する情報を毎年調査します。 最後の年に 索引が使用されていなかった場合、その索引はドロップする候補と見なすことができます。 索引のドロップが必要でない事情も考えられるため、 索引をドロップするかどうかは、ユーザーが最終的に判断します。 例えば、 緊急時のみアクセスされる表、または 頻繁なアクセスはなくても素早いアクセスが重要である表が考えられます。あるいは 表の索引がユニークである場合、その索引が明示的に使用されたことはなくても、 ユニーク制約の適用のために、使用しなければならない可能性があります。 最終使用日の情報は、 索引の削除を決断する際に役立ちます。
  • 企業の社内アプリケーションの中には、データベースにデプロイされて数カ月または数年の期間が経過した後、他のアプリケーションに置き換わったか、もはや使用されなくなったものがあります。 リタイヤしたアプリケーションは、スペースを節約する機会として特定されました。 最終使用日の情報を使用して、もう使用されていないデータベース・オブジェクトで、 アプリケーションがリタイヤした後にクリーンアップされなかったものを 特定することができます。 例えば、 これらのデータベース・オブジェクトは、GUI にデータを追加するために使用される値を保管する表などが考えられます。 このような表の最終使用日は、 SYSCAT.TABLES カタログ・ビューの LASTUSED 列に表示されます。 この日付は、スペースを再利用するために削除可能な表オブジェクトを調査するための開始点として使用できます。
特定のデータベース・オブジェクト、とりわけ結果的に更新を生じるデータベース・オブジェクト操作に関する、 カタログ・ビューの LASTUSED 列について詳しくは、 以下のトピックを参照してください。
  • SYSCAT.DATAPARTITIONS カタログ・ビュー
  • SYSCAT.INDEXES カタログ・ビュー
  • SYSCAT.PACKAGES カタログ・ビュー
  • SYSCAT.TABLES カタログ・ビュー