Hi
We have a table that stores metrics but does not have TTL, it is partitioned by 
metrics_source, metric_type and clustered by a timestamp.
we are currently using the following TWCS compaction with the settings below.
{'class': 'org.apache.cassandra.db.compaction.TimeWindowCompactionStrategy', 
'compaction_window_size': '7', 'compaction_window_unit': 'DAYS', 
'max_threshold': '32', 'min_threshold': '4'}

Some relevant info from tablestats and table historgram, currently the 
performance is sufficint for our usecase.
SSTable count: 529
Max SSTable size: 15.577GiB
Local read/write ratio: 0.75296SSTables Time Window: 7 DAYS, max duration: 3707 
days 4 hours 58 minutes 47 seconds
Local read count: 3823721
Local read latency: 2.129 ms
Local write count: 5078241
Local write latency: 0.011 ms

Percentile      Read Latency     Write Latency          SSTables    Partition 
Size        Cell Count
50%                   1597.00                  10.00                         
12.00             17084                    1331
75%                    1916.00                 12.00                         
20.00             29521                    2299
95%                    3973.00                 29.00                         
29.00             73457                   5722
98%                    9887.00                 35.00                         
29.00            126934                   9887
99%                   14237.00                50.00                        
35.00            182785                  11864
Min                      373.00                    2.00                         
  0.00                36                            0
Max                     29521.00               446.00                      
50.00           8409007                654949

We have recently upgraded to cassandra 5.0.5 and I have been reading about UCS, 
since our data does not have TTL we are accumulating sstables with time.

  1.
Would you recommend migrating to UCS is it production ready and safe to use?
  2.
My scenario has  mixed worload, a constant wrote and occasiouanl bursts of 
read. Would UCS result in comparable performance or better to TWCS?
  3.
Because my data has  no TLL, Is there an option in UCS to use a time based 
compaction in the lower tiers like TWCS and a SizeBased in higher tier to have 
the best of both worlds?
  4.
Which UCS settings do you think would be a good starting point to experiemnt.


Best regards,
Isaeed Mohanna


Reply via email to