Hi Arindam,
There were some changes for CQL3 for composite keys storage , and you may be 
using CQL2 by default.You could try for a non composite key or supply all the 
components of the key in the search...and see if you get different results...
Regards,roshni

 

> From: aba...@247-inc.com
> To: user@cassandra.apache.org
> Subject: RE: Read latency issue
> Date: Wed, 3 Oct 2012 17:53:46 +0000
> 
> 
> Thanks for your responses.
> 
> Just to be clear our table declaration looks something like this:
> CREATE TABLE sessionevents (
>   atag text,
>   col2 uuid,
>   col3 text,
>   col4 uuid,
>   col5 text,
>   col6 text,
>   col7 blob,
>   col8 text,
>   col9 timestamp,
>   col10 uuid,
>   col11 int,
>   col12 uuid,
>   PRIMARY KEY (atag, col2, col3, col4)
> )
> 
> My understanding was that the (full) row key in this case would be the 'atag' 
> values. The column names would then be composites like 
> (<col2_value>:<col3_value>:<col4_value>:col5), (<col2_value>: <col3_value>: 
> <col4_value>:col6), (<col2_value>:<col3_value>:<col4_value>:col7) ... 
> (<col2_value>: <col3_value>: <col4_value>:col12). The columns would be sorted 
> first by col2_values, then by col3 values, etc.
> 
> Hence a query like "select * from sessionevents where atag=<foo>", we are 
> specifying the entire row key, and Cassandra would return all the columns for 
> that row.
> 
> >> Using read consistency of ONE reduces the read latency by ~20ms, compared 
> >> to using QUORUM.
> >It would only have read from the local node. (I think, may be confusing 
> >secondary index reads here).
> For read consistency ONE, reading only from one node is my expectation as 
> well, and hence I'm seeing the reduced read latency compared to read 
> consistency QUORUM. Does that not sound right?
> Btw, with read consistency ONE, we found the reading only happens from one 
> node, but not necessarily the local node, even if the data is present in the 
> local node. To check this, we turned on DEBUG logs on all the Cassandra hosts 
> in the ring. We are using replication factor=3 on a 4 node ring, hence mostly 
> the data is present locally. However, we noticed that the coordinator host on 
> receiving the same request multiple times (i.e with the same row key) , would 
> sometimes return the data locally, but sometimes would contact another host 
> in the ring to fetch the data.
> 
> Thanks,
> Arindam
> 
> -----Original Message-----
> From: aaron morton [mailto:aa...@thelastpickle.com] 
> Sent: Wednesday, October 03, 2012 12:32 AM
> To: user@cassandra.apache.org
> Subject: Re: Read latency issue
> 
> > Running a query to like "select * from <table_name> where atag=<foo>", 
> > where 'atag' is the first column of the composite key, from either JDBC or 
> > Hector (equivalent code), results in read times of 200-300ms from a remote 
> > host on the same network. 
> 
> If you send a query to select columns from a row and do not fully specify the 
> row key cassandra has to do a row scan. 
> 
> If you want fast performance specify the full row key. 
> 
> > Using read consistency of ONE reduces the read latency by ~20ms, compared 
> > to using QUORUM.
> It would only have read from the local node. (I think, may be confusing 
> secondary index reads here).
>  
> Cheers
> 
> -----------------
> Aaron Morton
> Freelance Developer
> @aaronmorton
> http://www.thelastpickle.com
> 
> On 3/10/2012, at 2:17 AM, Roshni Rajagopal <roshni_rajago...@hotmail.com> 
> wrote:
> 
> > Arindam,
> > 
> >   Did you also try the cassandra stress tool & compare results?
> > 
> > I havent done a performance test as yet, the only ones published on 
> > the internet are of YCSB on an older version of apache cassandra, and it 
> > doesn't seem to be actively supported or updated 
> > http://www.brianfrankcooper.net/pubs/ycsb-v4.pdf.
> > 
> > The numbers you have sound very low, for a read of a row by key which 
> > should have been the fastest.  I hope someone can help investigate or share 
> > numbers from their tests.
> > 
> >  
> > 
> > Regards,
> > Roshni
> >  
> > 
> > > From: dean.hil...@nrel.gov
> > > To: user@cassandra.apache.org
> > > Date: Tue, 2 Oct 2012 06:41:09 -0600
> > > Subject: Re: Read latency issue
> > > 
> > > Interesting results. With PlayOrm, we did a 6 node test of reading 100 
> > > rows from 1,000,000 using PlayOrm Scalable SQL. It only took 60ms. Maybe 
> > > we have better hardware though??? We are using 7200 RPM drives so nothing 
> > > fancy on the disk side of things. More nodes puts at a higher throughput 
> > > though as reading from more disks will be faster. Anyways, you may want 
> > > to play with more nodes and re-run. If you run a test with PlayOrm, I 
> > > would love to know the results there as well.
> > > 
> > > Later,
> > > Dean
> > > 
> > > From: Arindam Barua <aba...@247-inc.com<mailto:aba...@247-inc.com>>
> > > Reply-To: 
> > > "user@cassandra.apache.org<mailto:user@cassandra.apache.org>" 
> > > <user@cassandra.apache.org<mailto:user@cassandra.apache.org>>
> > > Date: Monday, October 1, 2012 4:57 PM
> > > To: "user@cassandra.apache.org<mailto:user@cassandra.apache.org>" 
> > > <user@cassandra.apache.org<mailto:user@cassandra.apache.org>>
> > > Subject: Read latency issue
> > > 
> > > unning a query to like "select * from <table_name> where atag=<foo>", 
> > > where 'atag' is the first column of the composite key, from either JDBC 
> > > or Hector (equivalent code), results in read times of 200-300ms from a 
> > > remote host on the same network. The query returned around 800 results. 
> > > Running the same query on a Cassandra host results in a read time of 
> > > ~110-130 ms.
> > > Using read consistency of ONE reduces the read latency by ~20ms, compared 
> > > to using QUORUM.
> > > 
> > > Enabling row cache did not seem to change the performance much. Moreover, 
> > > the row cache 'size' according to nodetool was very tiny. Here is a 
> > > snapshot of the nodetool info after running few read tests:
> > > Key Cache : size 2448 (bytes), capacity 104857584 (bytes), 231 hits, 
> > > 266 requests, 1.000 recent hit rate, 14400 save period in seconds 
> > > Row Cache : size 96 (bytes), capacity 4194304000 (bytes), 9 hits, 13 
> > > requests, NaN recent hit rate, 0 save period in seconds
> > >
> 
> 
> 
                                          

Reply via email to