メンテナンスのタイプ

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

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

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

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

技術保守

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

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

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

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

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

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

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

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

テーブルの再構築

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

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

このページ