Eftersom c* är sista skrivvinster kan du helt enkelt behålla de senaste versionerna av varje rad.
Du kan, som MSD föreslår, använda writetime
att dra tiden för skrivningen. Men var försiktig eftersom detta är kolumnspecifikt och du kan inte använda skrivtid på dina primära nyckelkolumner. Till exempel i en tabell enligt följande:
cqlsh> create TABLE test.test ( a int, b int, c int, d int, primary key (a))
... ;
cqlsh> insert INTO test.test (a, b, c, d) VALUES ( 1,2,3,4)
... ;
cqlsh> select * from test.test
... ;
a | b | c | d
---+------+---+------
1 | 2 | 3 | 4
(2 rows)
cqlsh> insert into test.test (a,c) values (1, 6);
cqlsh> select * from test.test ;
a | b | c | d
---+------+---+------
1 | 2 | 6 | 4
(2 rows)
cqlsh> select writetime(a), writetime(b), writetime(c), writetime(d) from test.test
... ;
InvalidRequest: code=2200 [Invalid query] message="Cannot use selection function writeTime on PRIMARY KEY part a"
cqlsh> select writetime(b), writetime(c), writetime(d) from test.test ;
writetime(b) | writetime(c) | writetime(d)
------------------+------------------+------------------
1434424690700887 | 1434424690700887 | 1434424702420929
Annars kan du lägga till en cql-kolumn med tidsstämpeln:
create TABLE test.test ( a int, b int, c int, d int, touched_at timeuuid, primary key (a)) ;
Lite snabb benchmarking skulle hjälpa dig att avgöra vilken som är mer presterande.