Snapshots take use a hard link and do not take additional disk space http://www.mail-archive.com/user@cassandra.apache.org/msg11028.html
WRT losing a node, it's not the number of total nodes thats important is the number of replicas. If you have 3 nodes with RF2 and you lose one of the replicas you will not be able to work at Quorum level. You *may* be able to use the NetworkTopologySnitch to have 2 replicas in DC1 and 1 replica in DC2. Then use the property file snitch to only put one node in the second DC. Finally work against DC1 with LOCAL_QUORUM so you do not wait on DC 2 and you can tolerate the link to DC2 failing. That also means there is no guarantee DC2 is up to date. If you were to ship snapshots you would have a better idea of what you had in DC2. FWIW I'm not convinced that setting things up so that one node gets *all* the data in DC2 is a good idea. It would make an offsite replica that could only work at essentially CL ONE and would require a lot of streaming to move to a cluster with more nodes. I don't have time right now to think through all of the implications now (may be able to do some more thinking tonight), but the data stax guide creates a warm fail over that is ready to work. I'm not sure what this approach would give you in case of failure: a backup to be restored or a failover installation. Hope that helps. Aaron On 30 Mar 2011, at 00:38, Brian Lycett wrote: > Hi. > > Cheers for your reply. > > Unfortunately there's too much data for snapshots to be practical. The > data set will be at least 400GB initially, and the offsite node will be > on a 20Mbit leased line. > > However I don't need the consistency level to be quorum for read/writes > in the production cluster, so am I right in still assuming that a > replication factor of 2 in a three node cluster allows for one node to > die without data loss? > > If that's the case, I still don't understand how to ensure that the > offsite node will get a copy of the whole data set. > I've read through the O'Reilly book, and that doesn't seem to address > this scenario (unless I still don't get the Cassandra basics at a > fundamental level). > > Does anyone know any tutorials/examples of such a set-up that would help > me out? > > Cheers, > > Brian > > > > On Tue, 2011-03-29 at 21:56 +1100, aaron morton wrote: >> Be aware that at RF 2 the Quorum is 2, so you cannot afford to lose a >> replica when working at Quorum. 3 is really the starting point if you >> want some redundancy. >> >> >> If you want to get your data offsite how about doing snapshots and >> moving them off >> site http://wiki.apache.org/cassandra/Operations#Consistent_backups >> >> >> The guide from Data Stax will give you a warm failover site, which >> sounds a bit more than what you need. >> >> >> Hope that helps. >> Aaron >> >> >> On 28 Mar 2011, at 22:47, Brian Lycett wrote: >> >>> Hello. >>> >>> I'm setting up a cluster that has three nodes in our production >>> rack. >>> My intention is to have a replication factor of two for this. >>> For disaster recovery purposes, I need to have another node (or >>> two?) >>> off-site. >>> >>> The off-site node is entirely for the purpose of having an offsite >>> backup of the data - no clients will connect to it. >>> >>> My question is, is it possible to configure Cassandra so that the >>> offsite node will have a full copy of the data set? >>> That is, somehow guarantee that a replica of all data will be >>> written to >>> it, but without having to resort to an ALL consistency level for >>> writes? >>> Although the offsite node will on a 20Mbit leased line, I'd rather >>> not >>> have the risk that the link goes down and breaks the cluster. >>> >>> I've seen this suggestion here: >>> http://www.datastax.com/docs/0.7/operations/datacenter#disaster >>> but that configuration is vulnerable to the link breaking, and uses >>> four >>> nodes in the offsite location. >>> >>> >>> Regards, >>> >>> Brian >>> >>> >>> >> >> > >