

Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.

# Expirer les données avec Time to Live (TTL) pour Amazon Keyspaces (pour Apache Cassandra)
<a name="TTL"></a>

Amazon Keyspaces (pour Apache Cassandra) Time to Live (TTL) vous aide à simplifier la logique de votre application et à optimiser le prix du stockage en expirant automatiquement les données des tables. Les données dont vous n'avez plus besoin sont automatiquement supprimées de votre tableau en fonction de la valeur Time to Live que vous avez définie. 

Cela facilite le respect des politiques de conservation des données basées sur les exigences commerciales, sectorielles ou réglementaires qui définissent la durée de conservation des données ou spécifient le moment où les données doivent être supprimées. 

Par exemple, vous pouvez utiliser le TTL dans une AdTech application pour planifier le moment où les données relatives à des annonces spécifiques expirent et ne sont plus visibles pour les clients. Vous pouvez également utiliser le TTL pour supprimer automatiquement les anciennes données et économiser sur vos coûts de stockage. 

Vous pouvez définir une valeur TTL par défaut pour l'ensemble du tableau et remplacer cette valeur pour les lignes et les colonnes individuelles. Les opérations TTL n'ont aucun impact sur les performances de votre application. De plus, le nombre de lignes et de colonnes marquées comme expirant avec le TTL n'affecte pas la disponibilité de votre table.

Amazon Keyspaces filtre automatiquement les données expirées afin qu'elles ne soient pas renvoyées dans les résultats des requêtes ou ne puissent pas être utilisées dans les instructions du langage de manipulation des données (DML). Amazon Keyspaces supprime généralement les données expirées du stockage dans les 10 jours suivant la date d'expiration. 

Dans de rares cas, Amazon Keyspaces peut ne pas être en mesure de supprimer les données dans les 10 jours en cas d'activité prolongée sur la partition de stockage sous-jacente afin de protéger la disponibilité. Dans ces cas, Amazon Keyspaces continue de tenter de supprimer les données expirées une fois que le trafic sur la partition diminue. 

Une fois les données définitivement supprimées du stockage, vous ne devez plus payer de frais de stockage. 

Vous pouvez définir, modifier ou désactiver les paramètres TTL par défaut pour les tables nouvelles et existantes à l'aide de la console, du langage de requête Cassandra (CQL) ou du. AWS CLI

Sur les tables où le TTL par défaut est configuré, vous pouvez utiliser des instructions CQL pour remplacer les paramètres TTL par défaut de la table et appliquer des valeurs TTL personnalisées aux lignes et aux colonnes. Pour plus d’informations, consultez [Utilisez l'`INSERT`instruction pour définir des valeurs de durée de vie (TTL) personnalisées pour les nouvelles lignes](TTL-how-to-insert-cql.md) et [Utilisez l'`UPDATE`instruction pour modifier les paramètres personnalisés de durée de vie (TTL) pour les lignes et les colonnes](TTL-how-to-update-cql.md).

La tarification TTL est basée sur la taille des lignes supprimées ou mises à jour à l'aide de Time to Live. Les opérations TTL sont mesurées en unités de. `TTL deletes` Une suppression TTL est consommée par Ko de données par ligne supprimée ou mise à jour. 

Par exemple, pour mettre à jour une ligne qui stocke 2,5 Ko de données et pour supprimer une ou plusieurs colonnes de la ligne en même temps, trois suppressions TTL sont nécessaires. Ou bien, pour supprimer une ligne entière contenant 3,5 Ko de données, quatre suppressions TTL sont nécessaires. 

Une suppression TTL est consommée par Ko de données supprimées par ligne. Pour plus d'informations sur les tarifs, consultez les tarifs [d'Amazon Keyspaces (pour Apache Cassandra](https://aws.amazon.com/keyspaces/pricing)).

**Topics**
+ [Amazon Keyspaces Time to Live et intégration aux services AWS](#ttl-howitworks_integration)
+ [Création d'une nouvelle table avec les paramètres Time to Live (TTL) par défaut](TTL-how-to-create-table.md)
+ [Mettre à jour la valeur TTL (Time to Live) par défaut d'une table](TTL-how-to-update-default.md)
+ [Créer un tableau avec les paramètres personnalisés de durée de vie (TTL) activés](TTL-how-to-enable-custom-new.md)
+ [Mettre à jour le tableau avec Time to Live (TTL) personnalisé](TTL-how-to-enable-custom-alter.md)
+ [Utilisez l'`INSERT`instruction pour définir des valeurs de durée de vie (TTL) personnalisées pour les nouvelles lignes](TTL-how-to-insert-cql.md)
+ [Utilisez l'`UPDATE`instruction pour modifier les paramètres personnalisés de durée de vie (TTL) pour les lignes et les colonnes](TTL-how-to-update-cql.md)

## Amazon Keyspaces Time to Live et intégration aux services AWS
<a name="ttl-howitworks_integration"></a>

La métrique TTL suivante est disponible sur Amazon CloudWatch pour permettre une surveillance continue.
+ `TTLDeletes`— Les unités consommées pour supprimer ou mettre à jour des données d'affilée à l'aide du Time to Live (TTL).

Pour plus d'informations sur la façon de surveiller CloudWatch les métriques, consultez[Surveillance d'Amazon Keyspaces avec Amazon CloudWatch](monitoring-cloudwatch.md).

Lorsque vous l'utilisez CloudFormation, vous pouvez activer le TTL lors de la création d'une table Amazon Keyspaces. Pour plus d’informations, consultez le [Guide de l’utilisateur AWS CloudFormation](https://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-cassandra-table.html). 

# Création d'une nouvelle table avec les paramètres Time to Live (TTL) par défaut
<a name="TTL-how-to-create-table"></a>

Dans Amazon Keyspaces, vous pouvez définir une valeur TTL par défaut pour toutes les lignes d'un tableau lorsque celui-ci est créé. 

La valeur TTL par défaut d'une table est zéro, ce qui signifie que les données n'expirent pas automatiquement. Si la valeur TTL par défaut d'une table est supérieure à zéro, un horodatage d'expiration est ajouté à chaque ligne.

Les valeurs TTL sont définies en secondes, et la valeur maximale configurable est de 630 720 000 secondes, soit l'équivalent de 20 ans. 

Après la création de la table, vous pouvez remplacer le paramètre TTL par défaut de la table pour des lignes ou des colonnes spécifiques par des instructions CQL DML. Pour plus d’informations, consultez [Utilisez l'`INSERT`instruction pour définir des valeurs de durée de vie (TTL) personnalisées pour les nouvelles lignes](TTL-how-to-insert-cql.md) et [Utilisez l'`UPDATE`instruction pour modifier les paramètres personnalisés de durée de vie (TTL) pour les lignes et les colonnes](TTL-how-to-update-cql.md).

Lorsque vous activez le TTL sur une table, Amazon Keyspaces commence à stocker des métadonnées supplémentaires liées au TTL pour chaque ligne. En outre, le TTL utilise des horodatages d'expiration pour suivre l'expiration des lignes ou des colonnes. Les horodatages sont stockés sous forme de métadonnées de ligne et contribuent au coût de stockage de la ligne. 

 Une fois la fonctionnalité TTL activée, vous ne pouvez pas la désactiver pour une table. Le fait de `default_time_to_live` définir le tableau sur 0 désactive les délais d'expiration par défaut pour les nouvelles données, mais cela ne désactive pas la fonctionnalité TTL et ne rétablit pas les métadonnées de stockage ou le comportement d'écriture d'origine du tableau Amazon Keyspaces. 

Les exemples suivants montrent comment créer une nouvelle table avec une valeur TTL par défaut.

------
#### [ Console ]

**Créez une nouvelle table avec une valeur Time to Live par défaut à l'aide de la console.**

1. [Connectez-vous à la AWS Management Console console Amazon Keyspaces et ouvrez-la chez https://console.aws.amazon.com/keyspaces/ vous.](https://console.aws.amazon.com/keyspaces/home)

1. Dans le panneau de navigation, choisissez **Tables**, puis **Create table (Créer une table)**.

1. Sur la page **Créer une table** dans la section **Détails de la table**, sélectionnez un espace de touche et donnez un nom à la nouvelle table.

1. Dans la section **Schéma**, créez le schéma de votre table.

1. Dans la section **Paramètres du tableau**, choisissez **Personnaliser les paramètres**.

1. Passez à **Time to Live (TTL).**

   Au cours de cette étape, vous sélectionnez les paramètres TTL par défaut pour le tableau. 

   Pour la **période TTL par défaut**, entrez le délai d'expiration et choisissez l'unité de temps que vous avez saisie, par exemple les secondes, les jours ou les années. Amazon Keyspaces stockera la valeur en quelques secondes.

1. Choisissez **Créer un tableau**. Votre table est créée avec la valeur TTL par défaut spécifiée.

------
#### [ Cassandra Query Language (CQL) ]

**Créez une nouvelle table avec une valeur TTL par défaut à l'aide de CQL**

1. L'instruction suivante crée une nouvelle table dont la valeur TTL par défaut est définie sur 3 024 000 secondes, ce qui représente 35 jours.

   ```
   CREATE TABLE my_table (
                   userid uuid,
                   time timeuuid,
                   subject text,
                   body text,
                   user inet,
                   PRIMARY KEY (userid, time)
                   ) WITH default_time_to_live = 3024000;
   ```

1. Pour confirmer les paramètres TTL de la nouvelle table, utilisez l'`cqlsh``DESCRIBE`instruction illustrée dans l'exemple suivant. La sortie indique le paramètre TTL par défaut pour le tableau sous `default_time_to_live` la forme.

   ```
   DESC TABLE my_table;
   ```

   ```
   CREATE TABLE my_keyspace.my_table (
       userid uuid,
       time timeuuid,
       body text,
       subject text,
       user inet,
       PRIMARY KEY (userid, time)
   ) WITH CLUSTERING ORDER BY (time ASC)
       AND bloom_filter_fp_chance = 0.01
       AND caching = {'class': 'com.amazonaws.cassandra.DefaultCaching'}
       AND comment = ''
       AND compaction = {'class': 'com.amazonaws.cassandra.DefaultCompaction'}
       AND compression = {'class': 'com.amazonaws.cassandra.DefaultCompression'}
       AND crc_check_chance = 1.0
       AND dclocal_read_repair_chance = 0.0
       AND default_time_to_live = 3024000
       AND gc_grace_seconds = 7776000
       AND max_index_interval = 2048
       AND memtable_flush_period_in_ms = 3600000
       AND min_index_interval = 128
       AND read_repair_chance = 0.0
       AND speculative_retry = '99PERCENTILE';
   ```

------
#### [ CLI ]

**Créez une nouvelle table avec une valeur TTL par défaut à l'aide du AWS CLI**

1. Vous pouvez utiliser la commande suivante pour créer une nouvelle table avec la valeur TTL par défaut définie sur un an.

   ```
   aws keyspaces create-table --keyspace-name 'myKeyspace' --table-name 'myTable' \
               --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text},{name=date,type=timestamp}],partitionKeys=[{name=id}]' \
               --default-time-to-live '31536000'
   ```

1. Pour confirmer l'état TTL de la table, vous pouvez utiliser la commande suivante.

   ```
   aws keyspaces get-table --keyspace-name 'myKeyspace' --table-name 'myTable'
   ```

   Le résultat de la commande ressemble à celui de l'exemple suivant

   ```
   {
       "keyspaceName": "myKeyspace",
       "tableName": "myTable",
       "resourceArn": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/myKeyspace/table/myTable",
       "creationTimestamp": "2024-09-02T10:52:22.190000+00:00",
       "status": "ACTIVE",
       "schemaDefinition": {
           "allColumns": [
               {
                   "name": "id",
                   "type": "int"
               },
               {
                   "name": "date",
                   "type": "timestamp"
               },
               {
                   "name": "name",
                   "type": "text"
               }
           ],
           "partitionKeys": [
               {
                   "name": "id"
               }
           ],
           "clusteringKeys": [],
           "staticColumns": []
       },
       "capacitySpecification": {
           "throughputMode": "PAY_PER_REQUEST",
           "lastUpdateToPayPerRequestTimestamp": "2024-09-02T10:52:22.190000+00:00"
       },
       "encryptionSpecification": {
           "type": "AWS_OWNED_KMS_KEY"
       },
       "pointInTimeRecovery": {
           "status": "DISABLED"
       },
       "ttl": {
           "status": "ENABLED"
       },
       "defaultTimeToLive": 31536000,
       "comment": {
           "message": ""
       },
       "replicaSpecifications": []
   }
   ```

------

# Mettre à jour la valeur TTL (Time to Live) par défaut d'une table
<a name="TTL-how-to-update-default"></a>

Vous pouvez mettre à jour une table existante avec une nouvelle valeur TTL par défaut. Les valeurs TTL sont définies en secondes, et la valeur maximale configurable est de 630 720 000 secondes, soit l'équivalent de 20 ans.

Lorsque vous activez le TTL sur une table, Amazon Keyspaces commence à stocker des métadonnées supplémentaires liées au TTL pour chaque ligne. En outre, le TTL utilise des horodatages d'expiration pour suivre l'expiration des lignes ou des colonnes. Les horodatages sont stockés sous forme de métadonnées de ligne et contribuent au coût de stockage de la ligne. 

Une fois le protocole TTL activé pour une table, vous pouvez remplacer le paramètre TTL par défaut de la table pour des lignes ou des colonnes spécifiques par des instructions CQL DML. Pour plus d’informations, consultez [Utilisez l'`INSERT`instruction pour définir des valeurs de durée de vie (TTL) personnalisées pour les nouvelles lignes](TTL-how-to-insert-cql.md) et [Utilisez l'`UPDATE`instruction pour modifier les paramètres personnalisés de durée de vie (TTL) pour les lignes et les colonnes](TTL-how-to-update-cql.md).

 Une fois la fonctionnalité TTL activée, vous ne pouvez pas la désactiver pour une table. Le fait de `default_time_to_live` définir le tableau sur 0 désactive les délais d'expiration par défaut pour les nouvelles données, mais cela ne désactive pas la fonctionnalité TTL et ne rétablit pas les métadonnées de stockage ou le comportement d'écriture d'origine du tableau Amazon Keyspaces. 

Procédez comme suit pour mettre à jour les paramètres Time to Live par défaut pour les tables existantes à l'aide de la console, du CQL ou du AWS CLI.

------
#### [ Console ]

**Mettre à jour la valeur TTL par défaut d'une table à l'aide de la console**

1. [Connectez-vous à la AWS Management Console console Amazon Keyspaces et ouvrez-la chez https://console.aws.amazon.com/keyspaces/ vous.](https://console.aws.amazon.com/keyspaces/home)

1. Choisissez le tableau que vous souhaitez mettre à jour, puis cliquez sur l'onglet **Paramètres supplémentaires**.

1. Passez à **Time to Live (TTL)** et choisissez **Modifier**.

1. Pour la **période TTL par défaut**, entrez le délai d'expiration et choisissez l'unité de temps, par exemple les secondes, les jours ou les années. Amazon Keyspaces stockera la valeur en quelques secondes. Cela ne modifie pas la valeur TTL des lignes existantes. 

1. Lorsque les paramètres TTL sont définis, choisissez **Enregistrer les modifications**.

------
#### [ Cassandra Query Language (CQL) ]

**Mettre à jour la valeur TTL par défaut d'une table à l'aide de CQL**

1. Vous pouvez l'utiliser `ALTER TABLE` pour modifier les paramètres TTL (Time to Live) par défaut d'une table. Pour mettre à jour les paramètres TTL par défaut de la table à 2 592 000 secondes, ce qui représente 30 jours, vous pouvez utiliser l'instruction suivante.

   ```
   ALTER TABLE my_table WITH default_time_to_live = 2592000;
   ```

1. Pour confirmer les paramètres TTL de la table mise à jour, utilisez l'`cqlsh``DESCRIBE`instruction illustrée dans l'exemple suivant. La sortie indique le paramètre TTL par défaut pour le tableau sous `default_time_to_live` la forme.

   ```
   DESC TABLE my_table;
   ```

   Le résultat de l'instruction doit ressembler à celui de cet exemple.

   ```
   CREATE TABLE my_keyspace.my_table (
       id int PRIMARY KEY,
       date timestamp,
       name text
   ) WITH bloom_filter_fp_chance = 0.01
       AND caching = {'class': 'com.amazonaws.cassandra.DefaultCaching'}
       AND comment = ''
       AND compaction = {'class': 'com.amazonaws.cassandra.DefaultCompaction'}
       AND compression = {'class': 'com.amazonaws.cassandra.DefaultCompression'}
       AND crc_check_chance = 1.0
       AND dclocal_read_repair_chance = 0.0
       AND default_time_to_live = 2592000
       AND gc_grace_seconds = 7776000
       AND max_index_interval = 2048
       AND memtable_flush_period_in_ms = 3600000
       AND min_index_interval = 128
       AND read_repair_chance = 0.0
       AND speculative_retry = '99PERCENTILE';
   ```

------
#### [ CLI ]

**Mettez à jour la valeur TTL par défaut d'une table à l'aide du AWS CLI**

1. Vous pouvez l'utiliser `update-table` pour modifier la valeur TTL par défaut d'une table. Pour mettre à jour les paramètres TTL par défaut de la table à 2 592 000 secondes, ce qui représente 30 jours, vous pouvez utiliser l'instruction suivante.

   ```
   aws keyspaces update-table --keyspace-name 'myKeyspace' --table-name 'myTable' --default-time-to-live '2592000'
   ```

1. Pour confirmer la valeur TTL par défaut mise à jour, vous pouvez utiliser l'instruction suivante.

   ```
   aws keyspaces get-table --keyspace-name 'myKeyspace' --table-name 'myTable'
   ```

   Le résultat de l'instruction doit ressembler à celui de l'exemple suivant.

   ```
   {
       "keyspaceName": "myKeyspace",
       "tableName": "myTable",
       "resourceArn": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/myKeyspace/table/myTable",
       "creationTimestamp": "2024-09-02T10:52:22.190000+00:00",
       "status": "ACTIVE",
       "schemaDefinition": {
           "allColumns": [
               {
                   "name": "id",
                   "type": "int"
               },
               {
                   "name": "date",
                   "type": "timestamp"
               },
               {
                   "name": "name",
                   "type": "text"
               }
           ],
           "partitionKeys": [
               {
                   "name": "id"
               }
           ],
           "clusteringKeys": [],
           "staticColumns": []
       },
       "capacitySpecification": {
           "throughputMode": "PAY_PER_REQUEST",
           "lastUpdateToPayPerRequestTimestamp": "2024-09-02T10:52:22.190000+00:00"
       },
       "encryptionSpecification": {
           "type": "AWS_OWNED_KMS_KEY"
       },
       "pointInTimeRecovery": {
           "status": "DISABLED"
       },
       "ttl": {
           "status": "ENABLED"
       },
       "defaultTimeToLive": 2592000,
       "comment": {
           "message": ""
       },
       "replicaSpecifications": []
   }
   ```

------

# Créer un tableau avec les paramètres personnalisés de durée de vie (TTL) activés
<a name="TTL-how-to-enable-custom-new"></a>

Pour créer un nouveau tableau avec les paramètres personnalisés Time to Live qui peuvent être appliqués aux lignes et aux colonnes sans activer les paramètres TTL par défaut pour l'ensemble du tableau, vous pouvez utiliser les commandes suivantes.

**Note**  
Si un tableau est créé avec des paramètres `ttl` personnalisés activés, vous ne pourrez pas les désactiver ultérieurement.

------
#### [ Cassandra Query Language (CQL) ]

**Créez une nouvelle table avec un paramètre TTL personnalisé à l'aide de CQL**
+ 

  ```
  CREATE TABLE my_keyspace.my_table (id int primary key) WITH CUSTOM_PROPERTIES={'ttl':{'status': 'enabled'}};
  ```

------
#### [ CLI ]

**Créez une nouvelle table avec un paramètre TTL personnalisé à l'aide du AWS CLI**

1. Vous pouvez utiliser la commande suivante pour créer une nouvelle table avec le TTL activé.

   ```
   aws keyspaces create-table --keyspace-name 'myKeyspace' --table-name 'myTable' \
                                   --schema-definition 'allColumns=[{name=id,type=int},{name=name,type=text}, {name=date,type=timestamp}],partitionKeys=[{name=id}]' \
                                   --ttl 'status=ENABLED'
   ```

1. Pour confirmer que le TTL est activé pour le tableau, vous pouvez utiliser l'instruction suivante.

   ```
   aws keyspaces get-table --keyspace-name 'myKeyspace' --table-name 'myTable'
   ```

   Le résultat de l'instruction doit ressembler à celui de l'exemple suivant.

   ```
   {
       "keyspaceName": "myKeyspace",
       "tableName": "myTable",
       "resourceArn": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/myKeyspace/table/myTable",
       "creationTimestamp": "2024-09-02T10:52:22.190000+00:00",
       "status": "ACTIVE",
       "schemaDefinition": {
           "allColumns": [
            {
                   "name": "id",
                   "type": "int"
               },
               {
                   "name": "date",
                   "type": "timestamp"
               },
               {
                   "name": "name",
                   "type": "text"
               }
           ],
           "partitionKeys": [
               {
                   "name": "id"
               }
           ],
           "clusteringKeys": [],
           "staticColumns": []
       },
       "capacitySpecification": {
           "throughputMode": "PAY_PER_REQUEST",
           "lastUpdateToPayPerRequestTimestamp": "2024-09-02T11:18:55.796000+00:00"
       },
       "encryptionSpecification": {
           "type": "AWS_OWNED_KMS_KEY"
       },
       "pointInTimeRecovery": {
           "status": "DISABLED"
       },
       "ttl": {
           "status": "ENABLED"
       },
       "defaultTimeToLive": 0,
       "comment": {
           "message": ""
       },
       "replicaSpecifications": []
   }
   ```

------

# Mettre à jour le tableau avec Time to Live (TTL) personnalisé
<a name="TTL-how-to-enable-custom-alter"></a>

Pour activer les paramètres personnalisés Time to Live pour un tableau afin que les valeurs TTL puissent être appliquées à des lignes et colonnes individuelles sans définir de valeur TTL par défaut pour l'ensemble du tableau, vous pouvez utiliser les commandes suivantes.

**Note**  
Une fois `ttl` activé, vous ne pouvez pas le désactiver pour le tableau.

------
#### [ Cassandra Query Language (CQL) ]

**Activer les paramètres TTL personnalisés pour une table à l'aide de CQL**
+ 

  ```
  ALTER TABLE my_table WITH CUSTOM_PROPERTIES={'ttl':{'status': 'enabled'}};
  ```

------
#### [ CLI ]

**Activez les paramètres TTL personnalisés pour un tableau à l'aide du AWS CLI**

1. Vous pouvez utiliser la commande suivante pour mettre à jour le paramètre TTL personnalisé d'une table.

   ```
   aws keyspaces update-table --keyspace-name 'myKeyspace' --table-name 'myTable' --ttl 'status=ENABLED'
   ```

1. Pour confirmer que le TTL est désormais activé pour la table, vous pouvez utiliser l'instruction suivante.

   ```
   aws keyspaces get-table --keyspace-name 'myKeyspace' --table-name 'myTable'
   ```

   Le résultat de l'instruction doit ressembler à celui de l'exemple suivant.

   ```
   {
       "keyspaceName": "myKeyspace",
       "tableName": "myTable",
       "resourceArn": "arn:aws:cassandra:us-east-1:111122223333:/keyspace/myKeyspace/table/myTable",
       "creationTimestamp": "2024-09-02T11:32:27.349000+00:00",
       "status": "ACTIVE",
       "schemaDefinition": {
           "allColumns": [
               {
                   "name": "id",
                   "type": "int"
               },
               {
                   "name": "date",
                   "type": "timestamp"
               },
               {
                   "name": "name",
                   "type": "text"
               }
           ],
           "partitionKeys": [
               {
                   "name": "id"
               }
           ],
           "clusteringKeys": [],
           "staticColumns": []
       },
       "capacitySpecification": {
           "throughputMode": "PAY_PER_REQUEST",
           "lastUpdateToPayPerRequestTimestamp": "2024-09-02T11:32:27.349000+00:00"
       },
       "encryptionSpecification": {
           "type": "AWS_OWNED_KMS_KEY"
       },
       "pointInTimeRecovery": {
           "status": "DISABLED"
       },
       "ttl": {
           "status": "ENABLED"
       },
       "defaultTimeToLive": 0,
       "comment": {
           "message": ""
       },
       "replicaSpecifications": []
   }
   ```

------

# Utilisez l'`INSERT`instruction pour définir des valeurs de durée de vie (TTL) personnalisées pour les nouvelles lignes
<a name="TTL-how-to-insert-cql"></a>

**Note**  
Avant de pouvoir définir des valeurs TTL personnalisées pour les lignes à l'aide de l'`INSERT`instruction, vous devez d'abord activer le TTL personnalisé sur la table. Pour de plus amples informations, veuillez consulter [Mettre à jour le tableau avec Time to Live (TTL) personnalisé](TTL-how-to-enable-custom-alter.md).

Pour remplacer la valeur TTL par défaut d'une table en définissant des dates d'expiration pour des lignes individuelles, vous pouvez utiliser l'`INSERT`instruction suivante :
+ `INSERT`— Insérez une nouvelle ligne de données avec un ensemble de valeurs TTL.

La définition des valeurs TTL pour les nouvelles lignes à l'aide de l'`INSERT`instruction a priorité sur le paramètre TTL par défaut de la table. 

L'instruction CQL suivante insère une ligne de données dans le tableau et modifie le paramètre TTL par défaut à 259 200 secondes (ce qui équivaut à 3 jours).

```
INSERT INTO my_table (userid, time, subject, body, user)
        VALUES (B79CB3BA-745E-5D9A-8903-4A02327A7E09, 96a29100-5e25-11ec-90d7-b5d91eceda0a, 'Message', 'Hello','205.212.123.123')
        USING TTL 259200;
```

Pour confirmer les paramètres TTL de la ligne insérée, utilisez l'instruction suivante.

```
SELECT TTL (subject) from my_table;
```

# Utilisez l'`UPDATE`instruction pour modifier les paramètres personnalisés de durée de vie (TTL) pour les lignes et les colonnes
<a name="TTL-how-to-update-cql"></a>

**Note**  
Avant de pouvoir définir des valeurs TTL personnalisées pour les lignes et les colonnes, vous devez d'abord activer le TTL sur le tableau. Pour de plus amples informations, veuillez consulter [Mettre à jour le tableau avec Time to Live (TTL) personnalisé](TTL-how-to-enable-custom-alter.md).

Vous pouvez utiliser l'`UPDATE`instruction pour remplacer la valeur TTL par défaut d'une table en définissant la date d'expiration des lignes et des colonnes individuelles :
+ Lignes — Vous pouvez mettre à jour une ligne de données existante avec une valeur TTL personnalisée.
+ Colonnes — Vous pouvez mettre à jour un sous-ensemble de colonnes dans des lignes existantes avec une valeur TTL personnalisée.

La définition des valeurs TTL pour les lignes et les colonnes a priorité sur le paramètre TTL par défaut de la table. 

Pour modifier les paramètres TTL de la colonne « objet » insérée précédemment de 259 200 secondes (3 jours) à 86 400 secondes (un jour), utilisez l'instruction suivante.

```
UPDATE my_table USING TTL 86400 set subject = 'Updated Message' WHERE userid = B79CB3BA-745E-5D9A-8903-4A02327A7E09 and time = 96a29100-5e25-11ec-90d7-b5d91eceda0a;
```

Vous pouvez exécuter une simple requête de sélection pour voir l'enregistrement mis à jour avant l'heure d'expiration.

```
SELECT * from my_table;
```

La requête affiche le résultat suivant.

```
userid                               | time                                 | body  | subject         | user
--------------------------------------+--------------------------------------+-------+-----------------+-----------------
b79cb3ba-745e-5d9a-8903-4a02327a7e09  | 96a29100-5e25-11ec-90d7-b5d91eceda0a | Hello | Updated Message | 205.212.123.123
50554d6e-29bb-11e5-b345-feff819cdc9f  | cf03fb21-59b5-11ec-b371-dff626ab9620 | Hello |         Message | 205.212.123.123
```

Pour confirmer que l'expiration est réussie, réexécutez la même requête après le délai d'expiration configuré.

```
SELECT * from my_table;
```

La requête affiche le résultat suivant une fois que la colonne « objet » a expiré.

```
userid                               | time                                 | body  | subject | user
--------------------------------------+--------------------------------------+-------+---------+-----------------
b79cb3ba-745e-5d9a-8903-4a02327a7e09  | 96a29100-5e25-11ec-90d7-b5d91eceda0a | Hello |    null | 205.212.123.123
50554d6e-29bb-11e5-b345-feff819cdc9f  | cf03fb21-59b5-11ec-b371-dff626ab9620 | Hello | Message | 205.212.123.123
```