Ah! Ok I was interpreting what you were saying to mean that if my RF was too high, then the ring would die if I lost one.
Ultimately what I want (I think) is: Replication Factor: 5 (aka "all of my nodes") Consistency Level: 2 Put another way, when I write a value, I want it to exist on two servers *at least* before I consider that write "successful" enough for my code to continue, but in the background I would like Cassandra to keep copying that value around at its leisure until all the ring nodes know about it. This sounds like what I need. Thanks for pointing me in the right direction. Best, Riyad On Mon, Nov 7, 2011 at 5:47 AM, Anthony Ikeda <anthony.ikeda....@gmail.com>wrote: > Riyad, I'm also just getting to know the different settings and values > myself :) > > I believe, and it also depends on your config, CL.ONE Should ignore the > loss of a node if your RF is 5, once you increase the CL then if you lose a > node the CL is not met and you will get exceptions returned. > > Sent from my iPhone > > On 07/11/2011, at 4:32, Riyad Kalla <rka...@gmail.com> wrote: > > Anthony and Jaydeep, thank you for weighing in. I am glad to see that they > are two different values (makes more sense mentally to me). > > Anthony, what you said caught my attention "to ensure all nodes have a > copy you may not be able to survive the loss of a single node." -- why > would this be the case? > > I assumed (incorrectly?) that a node would simply disappear off the map > until I could bring it back up again, at which point all the missing values > that it didn't get while it was done, it would slowly retrieve from other > members of the ring. Is this the wrong understanding? > > If forcing a replication factor equal to the number of nodes in my ring > will cause a hard-stop when one ring goes down (as I understood your > comment to mean), it seems to me I should go with a much lower replication > factor... something along the lines of 3 or roughly ceiling(N / 2) and just > deal with the latency when one of the nodes has to route a request to > another server when it doesn't contain the value. > > Is there a better way to accomplish what I want, or is keeping the > replication factor that aggressively high generally a bad thing and using > Cassandra in the "wrong" way? > > Thank you for the help. > > -Riyad > > On Sun, Nov 6, 2011 at 11:14 PM, chovatia jaydeep < > chovatia_jayd...@yahoo.co.in> wrote: > >> Hi Riyad, >> >> You can set replication = 5 (number of replicas) and write with CL = ONE. >> There is no hard requirement from Cassandra to write with CL=ALL to >> replicate the data unless you need it. Considering your example, If you >> write with CL=ONE then also it will replicate your data to all 5 replicas >> eventually. >> >> Thank you, >> Jaydeep >> ------------------------------ >> *From:* Riyad Kalla <rka...@gmail.com> >> *To:* "user@cassandra.apache.org" <user@cassandra.apache.org> >> *Sent:* Sunday, 6 November 2011 9:50 PM >> *Subject:* Will writes with < ALL consistency eventually propagate? >> >> I am new to Cassandra and was curious about the following scenario... >> >> Lets say i have a ring of 5 servers. Ultimately I would like each server >> to be a full replication of the next (master-master-*). >> >> In a presentation i watched today on Cassandra, the presenter mentioned >> that the ring members will shard data and route your requests to the right >> host when they come in to a server that doesnt physically contain the value >> you wanted. To the client requesting this is seamless excwpt for the added >> latency. >> >> If i wanted to avoid the routing and latency and ensure every server had >> the full data set, do i have to write with a consistency level of ALL and >> wait for all of those writes to return in my code, or can i write with a CL >> of 1 or 2 and let the ring propagate the rest of the copies to the other >> servers in the background after my code has continued executing? >> >> I dont mind eventual consistency in my case, but i do (eventually) want >> all nodes to have all values and cannot tell if this is default behavior, >> or if sharding is the default and i can only force duplicates onto the >> other servers explicitly with a CL of ALL. >> >> Best, >> Riyad >> >> >