Cassandra TTL & Cassandra CQL-i andmetüübid (näide)
Cassandra Andmetüübid
Cassandra toetab erinevat tüüpi andmetüüpe. Siin on tabel, mis näitab andmetüüpe, nende konstante ja kirjeldust.
CQL tüüp | Konstandid | Kirjeldus |
---|---|---|
ASCII | Keelpillid | US-Ascii märgistring |
Bigint | Täisarvud | 64-bitine allkirjastatud pikk |
kämp | plekid | Suvalised baidid kuueteistkümnendsüsteemis |
Boolean | Booleans | Õige või vale |
Võidelda | Täisarvud | Jaotatud loenduri väärtused 64 bitti |
Kümnend- | Täisarvud, ujukid | Muutuva täpsusega kümnend |
Double | Täisarvud, ujukid | 64-bitine hõljuk |
Float | Täisarvud, ujukid | 32-bitine hõljuk |
Külmutatud | Kordad, kogud, kasutaja määratud tüübid | Kauplused Cassandra tüübid |
Inet | Keelpillid | IP-aadress IPV4 või IPV6 vormingus |
Int | Täisarvud | 32-bitine märgiga täisarv |
nimekiri | Elementide kogumine | |
kaart | Jsoni stiilis elementide kollektsioon | |
komplekt | Elementide kogumine | |
Tekst | Keelpillid | UTF-8 kodeeritud stringid |
Ajatempel | Täisarvud, stringid | ID loodud kuupäeva ja kellaajaga |
Timeuuid | Uuids | Tüüp 1 uuid |
Tuple | 2,3 väljast koosnev rühm | |
Uuid | Uuids | Standardne uuid |
Varchar | Keelpillid | UTF-8 kodeeringuga string |
Varint | Täisarvud | Suvalise täpsusega täisarv |
Cassandra TTL (Time to Live), kasutades automaatset andmete aegumist
Cassandra pakub funktsioone, mille abil saab andmeid automaatselt aeguda.
Andmete sisestamise ajal peate määrama ttl väärtuse sekundites. „ttl” väärtus on aeg, mis kulub andmete väärtuse elamiseks. Pärast seda konkreetset aega eemaldatakse andmed automaatselt.
Näiteks määrake sisestamise ajal ttl väärtus 100 sekundit. Andmed kustutatakse automaatselt 100 sekundi pärast. Kui andmed on aegunud, märgitakse need aegunud andmed hauakiviga.
Hauakivi on olemas ajapikenduseks. Pärast andmete aegumist eemaldatakse andmed pärast tihendamisprotsessi automaatselt.
Süntaks
Insert into KeyspaceName.TableName(ColumnNames) values(ColumnValues) using ttl TimeInseconds;
Näide
Siin on hetktõmmis, kus andmed sisestatakse õpilase tabelisse ttl väärtusega 100 sekundit.
insert into University.Student(rollno,name,dept,semester) values(3,'Guru99','CS’,7) using ttl 100;
Siin on hetktõmmis, kus andmed aeguvad automaatselt 100 sekundi pärast ja andmed eemaldatakse automaatselt.