cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Morgan Segalis <>
Subject Data model question, storing Queue Message
Date Thu, 26 Apr 2012 13:30:48 GMT
Hi everyone !

I'm fairly new to cassandra and I'm not quite yet familiarized with column oriented NoSQL
I have worked a while on it, but I can't seems to find the best model for what I'm looking

I have a Erlang software that let user connecting and communicate with each others, when an
user (A) sends
a message to a disconnected user (B), it stores it on the database and wait for the user (B)
to connect and retrieve
the message queue, and deletes it. 

Here's some key point : 
- Users are identified by integer IDs
- Each message are unique by combination of : Sender ID - Receiver ID - Message ID - time

I have a queue Message, and here's the operations I would need to do as fast as possible :

- Store from 1 to X messages per registered user
- Get the number of stored messages per user (Can be a incremental variable updated at each
store // this is often retrieved)
- retrieve all messages from an user at once.
- delete all messages from an user at once.
- delete all messages that are older than Y months (from all users).

I really don't think that storage will be an issue, I have 2TB per nodes, messages are 1KB
I'm really looking for speed rather than storage optimization.

My configuration is 2 dedicated server which are both :
- 4 x Intel i7 2.66 Ghz
- 64 bits
- 24 Go
- 2 TB

Thank you all.
View raw message