a) Multiple DCs: Can I control that each key should store in each and
every data center? If it is possible, an example configuration will be
you cannot.... and if you did the ring will break... consider Cassandra in multiple DC as one big Ring..... We use Cassandra to have copies of all data in all the DC's
I'm not an expert in Cassandra yet but I do know a little, here are some (attempted) answers:Dunno, sounds nontrivial.
2009/12/8 Rakesh Sharma <firstname.lastname@example.org>
b) Apart from nodeprobe and Jconsole is there any other node management tool?
You can use any JMX application, apparently, to monitor it. This could be done e.g. via a command line script (assuming there is a convenient JMX CLI) and then hooked into your monitoring. I'd look there first. I have not tried this (yet).
d) Can I control where a node will be added in the ring? How is it decided? Primarily, I want to understand how the hot-spots can be handled?
You can pick the token manually before first startup; it gets read from the config file.
Detecting hot-spots is not easy. If you use the OrderedPartitioner, then hot spots tend to occur where you put all your keys. The fix is to spread out your keys, or bunch up your nodes, but if you use time-based keys or similar, your key distribution will change over time so you can't win that way.
Nodes can be decommissioned now (as of 0.5 I think) with the nodeprobe decommission command. You can then stop the node, clear all its data and re-bootstrap it with a different token. This is not an automatic or particularly fast or convenient process.
e) How a node data backup should be taken such that reads and writes at that time are not effected (read or write locks)? Any tool/utility that can be used?
The nodeprobe snapshot can take a snapshot of an individual node. You can of course schedule these to happen at (about) the same time.
f) Can I take backups from each node and merge them on a single node? Or it's not at all required?