Données expirant avec time-to-live

Utilisez time-to-live (TTL) pour expirer des données dans une colonne ou une table.

Les colonnes et les tables prennent en charge une période d’expiration facultative appelée TTL (time-to-live) ; TTL n’est pas pris en charge sur les colonnes de compteur. Définissez la valeur TTL en secondes. Les données expirent une fois qu’elles dépassent la période TTL et sont ensuite marquées d’une pierre tombale. Les données expirées continuent d’être disponibles pour les demandes de lecture pendant la période de grâce, voir gc_grace_seconds. Les processus de compactage et de réparation normaux suppriment automatiquement les données de la pierre tombale.

Note:

  • La précision TTL est d’une seconde, qui est calculée par le nœud coordinateur. Lorsque vous utilisez TTL, assurez-vous que tous les nœuds du cluster ont des horloges synchronisées.
  • Un TTL très court n’est pas très utile.

  • Les données expirantes utilisent 8 octets supplémentaires de mémoire et d’espace disque pour enregistrer le TTL et la période de grâce.

Définition d’un TTL pour une colonne spécifique

Utilisez CQL pour définir le TTL.

Pour modifier le TTL d’une colonne spécifique, vous devez réinsérer les données avec un nouveau TTL. Cassandra bouleverse la colonne avec le nouveau TTL.

Pour supprimer TTL d’une colonne, définissez TTL sur zéro. Pour plus de détails, consultez la documentation de MISE À JOUR.

Définition d’un TTL pour une table

Utilisez CREATE TABLE ou ALTER TABLE pour définir la propriété default_time_to_live pour toutes les colonnes d’une table. Si une colonne dépasse TTL, la table entière est gravée.

Pour plus de détails et des exemples, voir Exemple de données expirant avec TTL.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.