I'm currently architecting a system that must be capable of dealing with tens of thousands of writes per second. I am more-or-less settled on using Apache Cassandra for the persistence layer, and will be using Java for the application layer, but there are situations where I need to quickly access data in a way that picks up any changes within seconds.
Hitting Cassandra every single time I need to check this data for changes will be too slow, which means I need to use some kind of application layer caching.
To ensure that the cached data remains current, ideally it would support some kind of multicast-based cache invalidation.
What are my options?
I would start by investigating if the cassandra key (avoid index scan) and/or row cache (avoid sstable lookup) is sufficient enough.
detailed information: http://wiki.apache.org/cassandra/API
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With