Cassandra Show Columna TTL

Cassandra Show Columna TTL

"Apache Cassandra es un tiempo para vivir o TTL de valor para los datos en una columna determinada. Puede usar el valor TTL en una declaración de inserción o actualización que permite que los datos en esa columna caducen después de que se transfiera la duración."

En esta publicación, discutiremos cómo puede establecer y obtener el valor TTL de una columna dada utilizando la instrucción Insertar y la función TTL, respectivamente.

Cassandra Crear columna con valor TTL

Las siguientes consultas crean un espacio de tecla y una nueva tabla para contener los datos de destino.

Drop KeySpace si existe cero_day;
Crear keyspace cero_day
con replicación =
'Clase': 'Simplestrategy',
'replication_factor': 1
;
usar cero_day;
crear registros de tabla (
Yo dint,
Texto de CVE_Number,
Fecha de informes,
Texto de Vendor afectado,
gravedad de la gravedad,
Clave principal (ID)
);

Luego podemos insertar datos con valores TTL como se muestra en las consultas a continuación:

comenzar por lote
Insertar en los registros (ID, CVE_Number, Report_Date, afectado_vendor, gravedad)
Valores (1, 'CVE-2021-33852', '2022-12-02', 'WordPress', 6.0) usando TTL 120;
Insertar en los registros (ID, CVE_Number, Report_Date, afectado_vendor, gravedad)
Valores (2, 'CVE-2020-14723', '2020-01-11', 'Oracle', 8.2) usando TTL 180;
Insertar en los registros (ID, CVE_Number, Report_Date, afectado_vendor, gravedad)
Valores (3, 'CVE-2019-19306', '2019-10-14', 'Zoho', 5.4) usando TTL 240;
Insertar en los registros (ID, CVE_Number, Report_Date, afectado_vendor, gravedad)
Valores (4, 'CVE-2021-33850', '2021-10-18', 'Microsoft', 5.0) usando TTL 300;
Insertar en los registros (ID, CVE_Number, Report_Date, afectado_vendor, gravedad)
Valores (5, 'CVE-2020-24600', '2020-07-01', 'Shilpi', 8.6) usando TTL 360;
aplicar lote;

Las declaraciones de inserción agregan datos con valores TTL a la tabla especificada. Tenga en cuenta que el valor TTL se define en segundos.

Cassandra muestra valores TTL

Para mostrar el valor TTL de una columna dada, use la función TTL como se muestra en el ejemplo a continuación:

cassandra@cqlsh: cero_day> seleccione ttl (cve_number) de registros donde id = 5;

La consulta anterior debe mostrar el valor TTL restante para la fila con ID de 5.

Una salida de ejemplo es como se muestra:

@ Fila 1
-----------------+-----
TTL (CVE_Number) | 169
(1 filas)

Una vez que se transcurre el valor TTL, los datos se eliminan de la tabla como se muestra:

cassandra@cqlsh: cero_day> seleccione ttl (cve_number) de registros donde id = 3;

La fila no existe en este caso, ya que los datos se han eliminado.

TTL (CVE_Number)
-----------------
(0 filas)

Conclusión

En este tutorial, discutimos cómo establecer y obtener el valor TTL de una fila dada en Cassandra.

Gracias por leer!!