On Thu, Sep 12, 2013 at 5:42 AM, Shahab Yunus <shahab.yu...@gmail.com>wrote:
> I admit about missing details. Sorry for that. The thing is that I was > looking for guidance at the high-level so we can then sort out myself what > fits our requirements and use-cases (mainly because we are at the stage > that they could be molded according to hardware and software > limitations/features.) So, for example if it is recommended that ' for > heavy reads physical is better etc.') > > Anyway, just to give you a quick recap: > 1- Cassandra 1.2.8 > 2- Row is a unique userid and can have one or more columns. Every cell is > basically a blob of data (using Avro.) All information is in this one > table. No joins or other access patters. > 3- Writes can be both in bulk (which will of course has less strict > performance requirements) or real-time. All writes would be at the per > userid, hence, row level and constitute of adding new rows (of course with > some column values) or updating specific cells (column) of the existing row. > 4- Reads are per userid i.e. row and 90% of the time random reads for a > user. Rather than in bulk. > 5- Both reads and write interfaces are exposed through REST service as > well as direct Java client API. > 6- Reads and writes, as mentioned in 3&4 can be for 1 or more columns at a > time. > > Regards, > Shahab > Your total data set size and number of reads/writes per-second are the important things here. Also how sensitive are you to latency spikes (which tends to happen with VM's)? Long story short, the safest option is always physical IMHO. Use VM/cloud if you need to use VM/cloud for some reason (like all the other servers talking to Cassandra are also in AWS for example). Cloud can work (Netflix uses Cassandra on AWS), but your performance will be a lot more consistent on physical hardware and Cassandra like all databases likes lots of RAM (although this can be offset some with SSD's) which tends to be expensive in the cloud. -- Aaron Turner http://synfin.net/ Twitter: @synfinatic https://github.com/synfinatic/tcpreplay - Pcap editing and replay tools for Unix & Windows Those who would give up essential Liberty, to purchase a little temporary Safety, deserve neither Liberty nor Safety. -- Benjamin Franklin