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 > >