time-to-live(TTL)を使用して、列または表のデータを期限切れにします。
列とテーブルは、TTL(time-to-live)と呼ばれるオプションの有効期限をサポートしています。 TTL値を秒単位で定義します。 TTL期間を超えると、データは期限切れになり、tombstoneがマークされます。 期限切れのデータは、猶予期間中も引き続き読み取り要求で使用できます。gc_grace_secondsを参照してください。 通常の圧縮および修復プロセスでは、墓石データが自動的に削除されます。
注意事項
注意事項:
- TTL精度は1秒で、コーディネーターノードによって計算されます。 TTLを使用する場合は、クラスタ内のすべてのノードがクロックを同期していることを確認します。非常に短いTTLはあまり有用ではありません。
-
期限切れのデータは、TTLと猶予期間を記録するために追加の8バイトのメモリとディスク領域を使用します。
特定の列のTTLを設定する
CQLを使用してTTLを設定します。特定の列のTTLを変更するには、新しいTTLでデータを再挿入する必要があります。 Cassandraは、新しいTTLで列をアップサートします。 列からTTLを削除するには、TTLをゼロに設定します。 詳細については、更新のドキュメントを参照してください。
テーブルのTTLの設定
CREATE TABLEまたはALTER TABLEを使用して、テーブル内のすべての列のdefault_time_to_liveプロパティを定義します。 いずれかの列がTTLを超えると、テーブル全体がtombstonedされます。
詳細と例については、”TTLでのデータの有効期限の例”を参照してください。