Time-To-Liveを使用したデータの期限切れ

カウンター・カラム以外のカラムのデータには、TTL(Time to live)というオプションの有効期限期間を持たせることができます。

カウンター・カラム以外のカラムのデータには、TTL(Time to live)というオプションの有効期限期間を持たせることができます。クライアント要求でデータに秒単位で定義したTTL値を指定します。要求された時間が経過すると、TTLデータにトゥームストーンのマークが付きます。トゥームストーンは、gc_grace_secondsの期間中存在します。データにトゥームストーンのマークが付くと、このデータは通常のコンパクション・プロセスおよびリペア・プロセス中に自動的に削除されます。

CQLを使用することで、データのTTLを設定できます。

期限切れになるデータのTTLを変更する場合は、新しいTTLを使用してデータを再度挿入する必要があります。Cassandraでのデータの挿入とは、以前のデータが存在するかどうかによって、挿入または更新の操作のことです。

TTLデータには、サーバーで計算される秒単位の精度があります。したがって、非常に小さいTTLはあまり役立ちません。さらに、サーバーのクロックを同期させる必要があります。有効期限は、最初の割り込みを受け取るプライマリ・ホストで計算されますが、その後はクラスター上の他のホストにより解釈されるため、クロックを同期させないと、精度が低下します。

期限切れになるデータには、標準データと比較して8バイトのオーバーヘッドがメモリー内とディスク上に追加されます(TTLと有効期限の記録のため)。