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

Reply via email to