Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Crea una nuova tabella con le impostazioni Time to Live (TTL) predefinite
In Amazon Keyspaces, puoi impostare un valore TTL predefinito per tutte le righe di una tabella al momento della creazione della tabella.
Il valore TTL predefinito per una tabella è zero, il che significa che i dati non scadono automaticamente. Se il valore TTL predefinito per una tabella è maggiore di zero, viene aggiunto un timestamp di scadenza a ogni riga.
I valori TTL sono impostati in secondi e il valore massimo configurabile è 630.720.000 secondi, che equivale a 20 anni.
Dopo la creazione della tabella, è possibile sovrascrivere l'impostazione TTL predefinita della tabella per righe o colonne specifiche con istruzioni CQL DML. Per ulteriori informazioni, consulta Utilizzate l'INSERTistruzione per impostare valori Time to Live (TTL) personalizzati per le nuove righe e Utilizzate l'UPDATEistruzione per modificare le impostazioni Time to Live (TTL) personalizzate per righe e colonne.
Quando abiliti il TTL su una tabella, Amazon Keyspaces inizia a memorizzare metadati aggiuntivi relativi a TTL per ogni riga. Inoltre, TTL utilizza i timestamp di scadenza per tenere traccia della scadenza di righe o colonne. I timestamp vengono archiviati come metadati di riga e contribuiscono al costo di archiviazione della riga.
Dopo aver abilitato la funzionalità TTL, non è possibile disabilitarla per una tabella. L'impostazione della tabella default_time_to_live
su 0 disabilita i tempi di scadenza predefiniti per i nuovi dati, ma non disattiva la funzionalità TTL né ripristina la tabella ai metadati di archiviazione o al comportamento di scrittura originali di Amazon Keyspaces.
Gli esempi seguenti mostrano come creare una nuova tabella con un valore TTL predefinito.
- Console
-
Crea una nuova tabella con un valore predefinito Time to Live utilizzando la console.
Accedi a e apri AWS Management Console la console Amazon Keyspaces a casahttps://console.aws.amazon.com/keyspaces/.
-
Nel pannello di navigazione, scegli Tabelle, quindi seleziona Crea tabella.
-
Nella pagina Crea tabella, nella sezione Dettagli della tabella, seleziona un keyspace e fornisci un nome per la nuova tabella.
-
Nella sezione Schema, crea lo schema per la tua tabella.
Nella sezione Impostazioni tabella, scegli Personalizza impostazioni.
-
Continua su Time to Live (TTL).
In questo passaggio, si selezionano le impostazioni TTL predefinite per la tabella.
Per il periodo TTL predefinito, inserisci l'ora di scadenza e scegli l'unità di tempo che hai inserito, ad esempio secondi, giorni o anni. Amazon Keyspaces memorizzerà il valore in pochi secondi.
-
Scegliere Create table (Crea tabella). La tabella viene creata con il valore TTL predefinito specificato.
- Cassandra Query Language (CQL)
-
Crea una nuova tabella con un valore TTL predefinito utilizzando CQL
-
L'istruzione seguente crea una nuova tabella con il valore TTL predefinito impostato su 3.024.000 secondi, che rappresenta 35 giorni.
CREATE TABLE my_table
(
userid uuid,
time timeuuid,
subject text,
body text,
user inet,
PRIMARY KEY (userid, time)
) WITH default_time_to_live = 3024000;
-
Per confermare le impostazioni TTL per la nuova tabella, utilizzate l'cqlsh
DESCRIBE
istruzione come illustrato nell'esempio seguente. L'output mostra l'impostazione TTL predefinita per la tabella come. default_time_to_live
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
-
Creare una nuova tabella con un valore TTL predefinito utilizzando il AWS CLI
-
È possibile utilizzare il comando seguente per creare una nuova tabella con il valore TTL predefinito impostato su un anno.
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'
-
Per confermare lo stato TTL della tabella, è possibile utilizzare il seguente comando.
aws keyspaces get-table --keyspace-name 'myKeyspace' --table-name 'myTable'
L'output del comando è simile a quello dell'esempio seguente
{
"keyspaceName": "myKeyspace",
"tableName": "myTable",
"resourceArn": "arn:aws:cassandra:us-east-1:123SAMPLE012:/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": []
}