メンテナンスのタイプ

アプリケーションメンテナンス

Adobe Campaignには、特定のデータベースメンテナンスタスクをスケジュールできる組み込みのワークフローが用意されています。データベースクリーンアップワークフロー。 このワークフローでは、次のタスクを実行します。

  • 期限切れレコードの削除
  • 期限切れオブジェクトの孤立したレコードの削除とステータスの再初期化
  • データベース統計を更新する。
重要

クリーンアップタスクは、RDBMSレベルのメンテナンス(統計の更新を除く)ではなく、主にアプリケーションレベルのメンテナンスを扱うことに注意してください。 ただし、データベースに対するメンテナンス操作は必要です。 データベースクリーンアップワークフローが正常に実行された場合でも、データベースが最適に調整されているわけではありません。

テクニカルメンテナンス

データベースクリーンアップワークフローには、データベースメンテナンスツールは含まれていません。メンテナンスを整理するのはあなた次第です。 これをおこなうには、次のいずれかを実行します。

  • データベース管理者と協力して、サードパーティのツールとのデータベースメンテナンスを設定します。
  • Adobe Campaignワークフローエンジンを使用して、これらのメンテナンスアクティビティをスケジュールおよび追跡します。

これらのメンテナンス手順は、定期的に実行する必要があり、次の手順を含める必要があります。

  • 頻繁に更新されるテーブルのインデックス再作成
  • テーブルを圧縮/再構築して断片化を回避します。

メンテナンススケジュール

これらのメンテナンス作業を実行するための適切なスロットを見つける必要があります。 実行中はデータベースのパフォーマンスに大きな影響を与えたり、(ロックによって)アプリケーションをブロックする場合もあります。

これらのタスクは通常、低アクティビティ時に週に1回実行され、バックアップ、データの再読み込み、集計の計算とは衝突しません。 高い頻度で要求されるシステムの中には、より頻繁なメンテナンスが必要なものもあります。

フルテーブルの再構築など、より詳細なメンテナンスは、月に1回実行できます。できれば、システムが使用できないため、アプリケーションを完全に停止した状態で実行できます。

テーブルの再構築

いくつかの戦略を使用できます。

運用 説明 利点 欠点
オンラインでのデフラグメント
ほとんどのデータベースエンジンは最適化方法を提供しています。
単にデータベースの最適化方法を使用します。 これらのメソッドは、通常、最適化中にデータをロックすることで整合性の問題を処理します。
データベースによっては、これらのデフラグメント方法をRDBMSオプション(Oracle)として提供することができ、必ずしも大きなテーブルを処理する最も効率的な方法とは限りません。
ダンプと復元
テーブルをファイルにダンプし、データベース内のテーブルを削除して、ダンプから復元します。
これは、テーブルを最適化する最も簡単な方法です。 また、データベースがほぼいっぱいになった場合の唯一の解決策です。
テーブルは削除され、再作成されるので、読み取り専用モードでもアプリケーションをオンラインにすることはできません(復元フェーズではテーブルを使用できません)。
複製、名前変更、ドロップ
これにより、テーブルとそのインデックスのコピーが作成され、既存のコピーを削除し、コピーの名前を変更して代わりに使用します。
この方法は、IOの数が少ない(ファイルとしてコピーせず、このファイルから読み出す)ので、最初の方法よりも高速です。
2倍の容量が必要です。
プロセス中にテーブルに書き込むアクティブなプロセスはすべて停止する必要があります。ただし、テーブルは再構築後に最後の時点でスワップされるので、読み取りプロセスに影響はありません。

このページ