17.00 - 17.05 - 不定期のハウスキーピング - Advanced SQL Engine - Teradata Database

Teradata Vantage™ - データベースの管理

Product
Advanced SQL Engine
Teradata Database
Release Number
17.00
17.05
Release Date
2020年6月
Content Type
管理
Publication ID
B035-1093-170K-JPN
Language
日本語 (日本)

必要に応じて、行を随時消去し、以下のテーブルのフィールドをリセットしてください。

  • DBC.AccessRightsテーブル

    ユーザーまたはデータベースが作成されると、デフォルトの数の権限がDBC.AccessRightsに追加されます。これらの項目を検証し、古い項目や重複する項目は必要に応じて削除する必要があります。この操作を行なわない場合、このテーブルは非常に膨大になる場合があり、メモリ容量に悪影響を及ぼす可能性があります。また、テーブルのデータ配置が偏る可能性もあります。

    さらに、オブジェクトを削除すると、システムがDBC.AccessRightsに対してフル テーブル スキャンを行なう場合があります。DBC.AccessRightsが大きい場合、削除操作のパフォーマンスに悪影響を及ぼす可能性があります。つまり、テーブルが小さければ小さいほど結果が良好であるといえます。

    以下の方法によって、DBC.AccessRightsテーブルのサイズを削減することができます。

    • 最も多くのエントリを持つユーザーを特定します。以下の問合わせは、同じ値にハッシュする行の数が最多のuserid/database IDを探します。
      .set retlimit 10
      .set ret cancel
      LOCKING ROW FOR ACCESS	
      SELECT COUNT(*) (TITLE '# of//Entries', FORMAT 'ZZZZZZ9'),
       a.userid|| a.databaseid (TITLE 'UserID|DatabaseID'),
       dbase.databasenamei (TITLE 'UserName')
      FROM accessrights a , dbase
      WHERE a.userid = dbase.databaseid
      GROUP BY 2,3 ORDER BY 1 DESC,2 ;
    • テーブル レベルのREVOKE権限とデータベース レベルのGRANT権限を使用して、エントリ数を減らします。
    • 可能な限り、個人の権限をロールの権限に変換します。
  • DBC.TSETQueryTextテーブル

    3610エラーが発生した場合は、Teradataのカスタマー サポート センターが使用するために、問合わせテキストがDBC.TSETQueryTextテーブルに保存されることがあります。問題の解決後、場合によっては、"Handled"列が1にセットされている行、またはその情報は必要ではなくなったことを示すタイムスタンプが押されている行を、手動で削除する必要があります。

  • アーカイブおよび回復関連のテーブル

    関連のリムーバブル メディアが期限切れになり上書きされた場合は、次のテーブル内のデータを消去します。

    テーブル 目的
    DBC.RCConfiguration 設定のアーカイブまたは回復
    DBC.RCMedia アーカイブまたは回復のVolSerial情報
    DBC.RCEvent アーカイブまたは回復のイベント
  • データ ディクショナリ テーブルに累積された値

    値をリセットするとリソース利用状況の分析精度が上がり、また、よりクリーンな履歴レコードを保持できます。必要に応じて次のフィールドをリセットする必要があります。

    フィールド 目的
    DBC.DataBaseSpaceテーブルのPeakPermSpace、PeakSpoolSpace、PeakTempSpace。 データベースおよびテーブル領域のアカウンティング情報が含まれています。次のマクロを実行して、値をリセットします。
    EXEC DBC.ClearPeakDisk;

    システムの領域利用状況の追跡は重要であるため、このマクロを定期的に実行する必要があります。または、UPDATE文を手動で発行します。

    DBC.AMPUsageビュー(DBC.Acctgテーブルに対応)のCPUTimeとDiskIO アカウント/ユーザーごとにリソース利用状況のデータが保持されています。以下を実行依頼して、値をリセットします。
    UPDATE DBC.AMPUsageV
    SET CPUTime = 0,
    DiskIO = 0
    ALL;
    以下のビューのAccessCountおよびLastAccessTimeStamp
    • DBC.ColumnsV
    • DBC.DatabasesV
    • DBC.IndicesV
    • DBC.TablesV
    • DBC.UsersV
    特定のオブジェクトがアクセスされた回数と最終時刻を追跡します。

    このフィールドをリセットするためには、次のいずれかのマクロを使用します。

    • ClearAllDatabaseUseCount
    • ClearDatabaseUseCount
    • ClearTVMUseCount