„Apache Cassandra Czas na życie lub wartość TTL dla danych w danej kolumnie. Możesz użyć wartości TTL w instrukcji Wstaw lub aktualizacji, umożliwiając wyginięcie danych w tej kolumnie po upływie czasu trwania."
W tym poście omówimy, w jaki sposób możesz ustawić i uzyskać wartość TTL danej kolumny za pomocą odpowiednio instrukcji Wstaw i TTL.
Cassandra Utwórz kolumnę o wartości TTL
Poniższe zapytania tworzą miejsce na klawisze i nową tabelę do przechowywania danych docelowych.
Upuść Keyspace, jeśli istnieje zero_day;
Utwórz Keyspace Zero_day
Z replikacją =
„klasa”: „ProsteStrategy”,
„Replikacja_factor”: 1
;
Użyj zero_day;
Utwórz rekordy tabeli (
Id int,
Tekst cve_number,
Raport_Date Data,
Tekst dotknięty_vendor,
Ważność pływak,
Klucz podstawowy (id)
);
Następnie możemy wstawić dane z wartościami TTL, jak pokazano w poniższych zapytaniach:
Rozpocznij partię
Wstaw do rekordów (id, cve_number, raport_date, dotknięty_wendor, nasilenie)
Wartości (1, „CVE-2021-33852”, „2022-12-02”, „WordPress”, 6.0) za pomocą TTL 120;
Wstaw do rekordów (id, cve_number, raport_date, dotknięty_wendor, nasilenie)
Wartości (2, „CVE-2020-14723”, „2020-01-11”, „Oracle”, 8.2) za pomocą TTL 180;
Wstaw do rekordów (id, cve_number, raport_date, dotknięty_wendor, nasilenie)
Wartości (3, „CVE-2019-19306”, „2019-10-14”, „Zoho”, 5.4) za pomocą TTL 240;
Wstaw do rekordów (id, cve_number, raport_date, dotknięty_wendor, nasilenie)
Wartości (4, „CVE-2021-33850”, „2021-10-18”, „Microsoft”, 5.0) za pomocą TTL 300;
Wstaw do rekordów (id, cve_number, raport_date, dotknięty_wendor, nasilenie)
Wartości (5, „CVE-2020-24600”, „2020-07-01”, „Shilpi”, 8.6) za pomocą TTL 360;
Zastosuj partię;
Instrukcje wstawki dodają dane o wartościach TTL do określonej tabeli. Należy pamiętać, że wartość TTL jest zdefiniowana w sekundach.
Cassandra pokazuje wartości TTL
Aby pokazać wartość TTL danej kolumny, użyj funkcji TTL, jak pokazano w poniższym przykładzie:
cassandra@cqlsh: zero_day> wybierz ttl (cve_number) z rekordów, gdzie id = 5;
Powyższe zapytanie powinno wyświetlić pozostałą wartość TTL dla wiersza z identyfikatorem 5.
Przykładem jest to, jak pokazano:
@ Row 1
-----------------+-----
TTL (cve_number) | 169
(1 wiersze)
Po upływie wartości TTL dane są usuwane z tabeli, jak pokazano:
cassandra@cqlsh: zero_day> wybierz ttl (cve_number) z rekordów, gdzie id = 3;
Rząd nie istnieje w tym przypadku, ponieważ dane zostały usunięte.
TTL (cve_number)
-----------------
(0 wierszy)
Wniosek
W tym samouczku omówiliśmy, jak ustawić i uzyskać wartość TTL danego rzędu w Cassandra.
Dziękuje za przeczytanie!!