|
|
|
|
|
by cnasillo
4416 days ago
|
|
Check the following; GoSquared is a web analytics app that covers exactly the sort of scenarios you mentioned. In brief, they use Cassandra and Redis for their backend. Redis is their middle layer for fast writes, sorting, aggregations (hourly, day, weekly, monthly), while cassandra is their "persistence" layer where they store the aggregations as a blob. Within Cassandra they optimize heavily on data locality for fast lookups of 'contiguous' rows using partitioning and clustering keys. When they need to pull them back, they scan the key ranges and pull their blob from Cassandra, then push it into Redis, which, with the various default data types, does a lot of the heavy lifting. You should watch the following presentation from them: https://engineering.gosquared.com/video-databases-tech-gosqu... |
|