このトピックでは、Time to Live (TTL) テーブルの定義と原則について説明します。
概要
PolarDB-Xを使用すると、DDLステートメントでlocal_partition_definition構文を指定してTTLテーブルを作成できます。 TTLテーブルは、各物理テーブルを時間ごとに分割し、スケジュールされたタスクに基づいてこれらの物理テーブルのデータを管理します。 これにより、PolarDB-Xインスタンスのコールドデータはスケジュールされたタスクに基づいて期限切れになり、ストレージ使用量が削減されます。
シナリオ
一部のビジネスシナリオでは、ビジネスデータの量が急激に増加し、ビジネスデータがクエリされる頻度が一定期間にわたって大幅に減少します。 データがPolarDB-Xに格納されている場合、ストレージスペースを解放できず、データクエリの効率が低下します。 この場合、TTLテーブルを使用してデータを管理できます。
制限事項
TTLテーブルは、PolarDB-X V5.4.13以降でのみサポートされます。
TTLテーブルは、自動モードを使用してパーティション分割されたテーブルでのみサポートされます。
概要
TTLテーブルの各物理テーブルは、時間に基づいてRANGEを使用することによって分割される。 グローバルセカンダリインデックス (GSI) を使用するすべての物理テーブルは、プライマリテーブルと同じモードでパーティション分割されます。
新しいパーティションが作成され、期限切れのパーティションは時間の経過とともに削除されます。 プロセスを次の表に示します。
デフォルトでは、PolarDB-Xは自動的に新しいパーティションを作成し、期限切れのパーティションを削除します。 テーブルを作成し、DDLステートメントを実行して新しいパーティションを手動で作成したり、期限切れのパーティションを削除したりするときに、パーティションの自動作成と削除を無効にできます。
次の表に、作成された新しいパーティションと、ライフサイクル後に削除される期限切れのパーティションを示します。