incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From aaron morton <aa...@thelastpickle.com>
Subject Re: please explain read path when key not in database
Date Thu, 28 Feb 2013 18:46:00 GMT
> This is my understanding from using cassandra for probably around 2 years
Sounds about right. 

Cheers

-----------------
Aaron Morton
Freelance Cassandra Developer
New Zealand

@aaronmorton
http://www.thelastpickle.com

On 26/02/2013, at 7:43 AM, "Hiller, Dean" <Dean.Hiller@nrel.gov> wrote:

> This is my understanding from using cassandra for probably around 2 years….(though
I still make mistakes sometimes)….
> 
> For CL.ONE read
> 
> Depending on the client, the client may go through one of it's known nodes(co-ordinating
node) which goes to real node(clients like astyanax/hector read in the ring information and
usually go direct so for CL_ONE, no co-ordination really needed).  The node it finally gets
to may not have the data yet and will return no row while the other 2 node might have data.
> 
> For CL.QUOROM read and RF=3
> Client goes to the node with data(again depending on client) and that node sends off
a request to one of the other 2.  Let's say A does not have row yet, but B has row, comparison
results and latest wins and a repair for that row is kicked off to get all nodes in sync of
that row.
> 
> If local node responsible for key replied that it have no data for this key - will coordinator
send digest commands?
> 
> IT looks like CL_ONE does trigger a read repair according to this doc (found googling
CL_ONE read repair cassandra)
> 
> http://cassandra-user-incubator-apache-org.3065146.n2.nabble.com/CL-ONE-reads-RR-badness-threshold-interaction-td6247418.html
> 
> http://wiki.apache.org/cassandra/ReadRepair
> 
> Later,
> Dean
> 
> Explain please, how this work when I request for key which is not in database
> 
> 
> *   The closest node (as determined by proximity sorting as described above) will be
sent a command to perform an actual data read (i.e., return data to the co-ordinating node).
> *   As required by consistency level, additional nodes may be sent digest commands, asking
them to perform the read locally but send back the digest only.
>    *   For example, at replication factor 3 a read at consistency level QUORUM would
require one digest read in additional to the data read sent to the closest node. (See ReadCallback<http://wiki.apache.org/cassandra/ReadCallback>,
instantiated by StorageProxy<http://wiki.apache.org/cassandra/StorageProxy>)
> 
> I have multi-DC with NetworkTopologyStrategy and RF:1 per datacenter, and reads are at
consitency level ONE. If local node responsible for key replied that it have no data for this
key - will coordinator send digest commands?
> 
> Thanks!


Mime
View raw message