a Cassandra Time-To-Live (TTL) a Datastax dokumentációban van leírva. Ez a blogbejegyzés röviden feltárja, hogy bemutassa, hogy a TTL oszloponként van beállítva, nem pedig soronként.
kezdjük a dokumentációban megadott példa újrateremtésével. Létrehozunk egy kulcsteret, egy táblát, és beszúrunk néhány adatot. A TTL érték jóval alacsonyabb, mint a hivatalos dokumentáció, mivel nem akarok 24 órát várni, mielőtt a TTL elfogy.
most, hogy létrehoztuk a kulcstér és a tábla, nézzük lekérdezni a TTL:
cqlsh> SELECT TTL (date), TTL (name) from excelsior.clicks; ttl(date) | ttl(name)----------------------- 52 | 52
Beszúrás vagy frissítés a TTL oszloponkénti módosításához
amint azt a CQL synatx mutatja, a TTL oszloponként van beállítva. Ennek bizonyítására most ismét beillesztjük az adatokat, de kizárjuk a dátumot.
ha ezután 11 másodpercet várunk, láthatjuk, hogy a különböző oszlopok különböző időpontokban lejárhatnak.
cqlsh> select * from excelsior.clicks; userid | url | date | name--------------------------------------+-------------------+------+------ 3715e600-2eb0-11e2-81c1-0800200c9a66 | http://apache.org | null | Mary
ez meglepő lehet, ha megszokta, hogy a sorok egyetlen entitásként viselkednek. Ha a Cassandra egy teljes sorához szeretné frissíteni a TTL-t, akkor a teljes sort újra be kell illesztenie vagy frissítenie kell egy új TTL-lel.