すべてのプロダクト
Search
ドキュメントセンター

Tair (Redis® OSS-Compatible):OOS を使用した有効期限切れキーの定期的な削除

最終更新日:Jun 22, 2026

Tair (Redis OSS-compatible) インスタンスは、有効期限切れのデータを段階的に削除するため、有効期限が切れた後もメモリを占有し続けます。CloudOps Orchestration Service (OOS) で 定期 O&M タスクを設定し、オフピーク時間にすべてのキーをスキャン (SCAN) して、有効期限切れのキーを即座に削除し、メモリを解放することができます。

背景情報

読み取り / 書き込みパフォーマンスを確保するために、Tair (Redis OSS-compatible) インスタンスは非同期削除ロジックを使用します。データの有効期限が切れても、インスタンスは即座に削除しません。代わりに、有効期限切れのキーはアクティブな削除 (定期的にスキャンして一部の有効期限切れのキーを削除するバックグラウンドプロセス) とパッシブな削除 (クライアントがアクセスを試みたときにキーが削除される) によって段階的に削除されます。極端なケースでは、大量のキーが一度に有効期限切れになると、メモリの解放に大幅な時間がかかる場合があります。

無料の OOS サービスを使用して、FlushExpireKeys API を定期的に呼び出すことで、すべてのキーをスキャンして有効期限切れのキーを即座に削除できます。

重要

SCAN コマンドはすべてのデータをスキャンし、インスタンスの CPU 負荷を増加させます。このタスクはオフピーク時間に実行してください。

前提条件

OOS サービスが Tair (Redis OSS-compatible) サービスにアクセスできるように、RAM ロールを作成してください。詳細については、「OOS の RAM ロールを設定して権限を付与する」をご参照ください。

  • ロールに [AliyunKvstoreFullAccess] システムポリシーを付与できます。これにより、すべての Tair (Redis OSS-compatible) リソースを管理できるようになります。

  • または、最小権限の原則に基づいてカスタムポリシーを作成できます。このポリシーにより、OOS は Tair (Redis OSS-compatible)DescribeInstances API と FlushExpireKeys API のみを呼び出すことができ、ロールの権限をこのタスクに制限できます。

    RAM ロールポリシーの例:

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "kvstore:DescribeInstances",
                    "kvstore:FlushExpireKeys"
                ],
                "Resource": "*"
            }
        ]
    }

操作手順

  1. OOS コンソールに移動します。

  2. 左側のナビゲーションウィンドウで、[Automated Task] > [定期 O&M] を選択します。

  3. [Create] をクリックします。

  4. 定期 O&M タスクを設定します。

    説明

    このトピックでは、主要なパラメータについてのみ説明します。その他のパラメータの詳細については、「CloudOps Orchestration Service」をご参照ください。

    スケジュール設定

    この例では、[Executed Periodically] を選択し、毎日 04:00 と 16:00 にタスクを実行します。

    [Repeat Cycle][cron 式] を選択し、次のようにフィールドを設定します:[Minute] を 0、[Hour] を 4,16、[Day-of-month] を ?、[Month] を *、[Day-of-week] を * に設定します。[Time Zone](GMT+08:00) Asia/Shanghai を選択します。[Effective Time]2025-07-23 00:00:00 に設定します。

    [End Time] を 2026-01-01 00:00:00 に設定します。定期 O&M タスクはこの時刻に停止します。

    テンプレートの選択

    [パブリックテンプレート] セクションで、[ACS-Redis-FlushExpireKeys] テンプレートを検索して選択します。

    テンプレートパラメータの設定

    1. インスタンスのリージョンとターゲットインスタンスを選択します。

    2. [実行権限ソース] で、「前提条件」セクションで作成した RAM ロールを選択します。

    実行設定 (オプション)

    このタブではデフォルト設定のままにしておくことができます。

  5. [Create] をクリックし、確認ダイアログボックスで [OK] をクリックします。

    タスクの [実行ステータス][Active] の場合、「[スケジュール設定]」に従って自動的に実行されます。

次のステップ

[定期 O&M] タスクリストで、タスクの [実行 ID] をクリックすると、詳細ページが開きます。このページでは、タスク設定の表示または変更、即時実行、実行履歴の表示ができます。

有効期限切れのデータが削除されてメモリが解放されると、パフォーマンスモニタリングでインスタンスの [メモリ使用率] メトリックが減少します。

関連ドキュメント

  • OOS で [アラート / イベント O&M] を設定することもできます。たとえば、平均メモリ使用率が 90% に達したときに FlushExpireKeys API を呼び出して有効期限切れのキーを削除できます。設定プロセスはこのソリューションと同様で、エントリポイントは [Automated Task] > [アラート / イベント O&M] です。詳細については、「アラートベースの O&M タスクを作成する」をご参照ください。

  • Tair と Redis が有効期限切れのデータを削除する方法の詳細については、「Tair と Redis が有効期限切れのキーをパージする方法」をご参照ください。