incubator-cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dikang Gu <dikan...@gmail.com>
Subject Re: How to reduce the Read Latency.
Date Mon, 23 May 2011 05:03:02 GMT
Thanks Aaron!

Through the commands "top" and "iostats", I find the IO system is not overloaded yet. So I
will check the data model.

And how to get the row size of a specific key? Do we have the api yet?

Thanks.

-- 
Dikang Gu
0086 - 18611140205
On Sunday, May 22, 2011 at 6:15 PM, aaron morton wrote: 
> It's hard to say the latency is to high without knowing how many columns and how many
bytes you are asking for. It's also handy to know what the query looks like, i.e. is it a
slice or a get by name, and the CF level 
> 
> Latency reported at the CF or KS level are for local read / write operations. Do all
nodes in the cluster show similar values or just this one? If you are looking for it the o.a.c.db.StorageProxy
MBean has the latency trackers for the cluster wide requests. 
> 
> If you are looking for a quick speed bump consider enabling the row cache. It looks like
you have a small hot set, they key cache has only 611 entries and gets a 90%+ hit rate and
the average row is 144KB. You will need more memory though. 
> 
> If you want to dig deeper into it:
> - make sure the app making the correct query and not wasting effort
> - watch TP stats to see if the server is keeping up with other things
> - check if the IO system is overloaded (google is your friend) 
> 
> I'd start with the data model and the query.
> 
> Hope that helps. 
> 
> -----------------
> -----------------
> Aaron Morton
> Freelance Cassandra Developer
> @aaronmorton
> http://www.thelastpickle.com
> 
> 
> 
> 
> 
> On 20 May 2011, at 20:32, Dikang Gu wrote:
> > I use the default consistency level in the hector client, so it should be QUORUM.
> > 
> > -- 
> > Dikang Gu
> > 0086 - 18611140205
> > On Friday, May 20, 2011 at 4:25 PM, Jeffrey Kesselman wrote:
> > > What consistency are you asking for?
> > > 
> > > On Fri, May 20, 2011 at 7:42 AM, Dikang Gu <dikang85@gmail.com> wrote:
> > > > Hi All,
> > > > I'm running three cassandra 0.7.4 nodes in a cluster, and I give 2G memory
> > > > to each node.
> > > > Now, I get the cfstats here:
> > > > Keyspace: UserMap
> > > > Read Count: 38411
> > > > Read Latency: 123.54214613001484 ms.
> > > > Write Count: 44155
> > > > Write Latency: 0.02341093873853471 ms.
> > > > Pending Tasks: 0
> > > > Column Family: Map
> > > > SSTable count: 3
> > > > Space used (live): 32704387
> > > > Space used (total): 32704387
> > > > Memtable Columns Count: 49
> > > > Memtable Data Size: 3348
> > > > Memtable Switch Count: 56
> > > > Read Count: 38411
> > > > Read Latency: 123.542 ms.
> > > > Write Count: 44155
> > > > Write Latency: 0.023 ms.
> > > > Pending Tasks: 0
> > > > Key cache capacity: 200000
> > > > Key cache size: 611
> > > > Key cache hit rate: 0.9294361241314483
> > > > Row cache: disabled
> > > > Compacted row minimum size: 125
> > > > Compacted row maximum size: 17436917
> > > > Compacted row mean size: 147647
> > > > You can find that the Read Latency is really high here, so what can I
do to
> > > > reduce the latency? Give more memory to the three nodes? Any other options?
> > > > Thanks.
> > > > --
> > > > Dikang Gu
> > > > 0086 - 18611140205
> > > 
> > > 
> > > 
> > > -- 
> > > It's always darkest just before you are eaten by a grue.
> > > 
> > 
> 

Mime
View raw message