Я знаю, что это старый вопрос, но и для любых Googlers, которые приходят вместе желающего ответ на версию 2 .x +, вот документ DataStax по адресу Determining Time To Live (TTL). Использование CQL с excelsior
ключевого пространства и семьи clicks
колонки, вы создаете таблицу, как обычно:
CREATE TABLE excelsior.clicks (
userid uuid,
url text,
name text,
PRIMARY KEY (userid, url)
);
При вставке данных, можно указать положение USING TTL
, а затем количество секунд, что данные должны сохраняться в течение :
INSERT INTO excelsior.clicks (
userid, url, name)
VALUES (
3715e600-2eb0-11e2-81c1-0800200c9a66,
'http://apache.org',
'Mary')
USING TTL 86400;
Обратите внимание, что 86400 - это количество секунд в сутки. Вы также можете установить TTL с помощью prepared statement в Java CQL Driver, просто обработав его как любой другой связанный параметр:
String strCQL = "INSERT INTO excelsior.clicks (userid, url, name) "
+ "VALUES (?,?,?) USING TTL ? ";
boundStatement = new BoundStatement(statement);
mySession.execute(boundStatement.bind(
UUID.fromString("3715e600-2eb0-11e2-81c1-0800200c9a66"),
"http://apache.org",
"Mary",
86400));