osdir.com


[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Global TTL vs Insert TTL


Is it safe to use TWCS in C* 3.9?

I would say that the unsafe part is more about using C* 3.9 than using TWCS in C*3.9 :-). I see no reason to say 3.9 would be specifically unsafe in C*3.9, but I might be missing something.

Going from STCS to TWCS is often smooth, from LCS you might expect an extra load compacting a lot (all?) of the SSTable from what we saw from the field. In this case, be sure that your compaction options are safe enough to handle this.

TWCS is even easier to use on C*3.0.8+ and C*3.8+ as it became the new default replacing TWCS, so no extra jar is needed, you can enable TWCS as any other default compaction strategy.

C*heers,
-----------------------
Alain Rodriguez - @arodream - alain@xxxxxxxxxxxxxxxxx
France

The Last Pickle - Apache Cassandra Consulting

2017-01-31 23:29 GMT+01:00 Cogumelos Maravilha <cogumelosmaravilha@xxxxxxx>:

Hi Alain,

Thanks for your response and the links.

I've also checked "Time series data model and tombstones".

Is it safe to use TWCS in C* 3.9?

Thanks in advance.


On 31-01-2017 11:27, Alain RODRIGUEZ wrote:
Is there a overhead using line by line option or wasted disk space?
 There is a very recent topic about that in the mailing list, look for "Time series data model and tombstones". I believe DuyHai answer your question there with more details :).

tl;dr:

Yes, if you know the TTL in advance, and it is fixed, you might want to go with the table option instead of adding the TTL in each insert. Also you might want consider using TWCS compaction strategy.

Here are some blogposts my coworkers recently wrote about TWCS, it might be useful:

-----------------------
Alain Rodriguez - @arodream - alain@xxxxxxxxxxxxxxxxx
France

The Last Pickle - Apache Cassandra Consulting



2017-01-31 10:43 GMT+01:00 Cogumelos Maravilha <cogumelosmaravilha@xxxxxxx>:
Hi I'm just wondering what option is fastest:
Global:
create table xxx (.....
AND default_time_to_live = XXX;

and

UPDATE xxx USING TTL XXX;

Line by line:

INSERT INTO xxx (...
 USING TTL xxx;

Is there a overhead using line by line option or wasted disk space?

Thanks in advance.