Return-Path: X-Original-To: apmail-cassandra-user-archive@www.apache.org Delivered-To: apmail-cassandra-user-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id A7EC3D2C8 for ; Mon, 1 Oct 2012 00:18:20 +0000 (UTC) Received: (qmail 90281 invoked by uid 500); 1 Oct 2012 00:18:18 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 90250 invoked by uid 500); 1 Oct 2012 00:18:18 -0000 Mailing-List: contact user-help@cassandra.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: user@cassandra.apache.org Delivered-To: mailing list user@cassandra.apache.org Received: (qmail 90237 invoked by uid 99); 1 Oct 2012 00:18:18 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 01 Oct 2012 00:18:18 +0000 X-ASF-Spam-Status: No, hits=2.2 required=5.0 tests=HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_PASS X-Spam-Check-By: apache.org Received-SPF: pass (nike.apache.org: local policy) Received: from [208.113.200.5] (HELO homiemail-a59.g.dreamhost.com) (208.113.200.5) by apache.org (qpsmtpd/0.29) with ESMTP; Mon, 01 Oct 2012 00:18:11 +0000 Received: from homiemail-a59.g.dreamhost.com (localhost [127.0.0.1]) by homiemail-a59.g.dreamhost.com (Postfix) with ESMTP id 31F89564061 for ; Sun, 30 Sep 2012 17:17:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=thelastpickle.com; h=from :content-type:message-id:mime-version:subject:date:references:to :in-reply-to; s=thelastpickle.com; bh=i6xq2RsUr63rkDhG/NhFDEOzW2 U=; b=VUDn+FGZbUynDS92TxPQLEmXswj2fFPBhMMRm5sr9p8xM2MDOdLUd3SZ5s GippV/L3pSud3U8AkrunC1UWLEWQOaAG+GKhfTZrV8Ea7s0hQEwgASKduzhNyCg+ SQF8+EVvCPN/p76RC9ZYTh5DWgX2i/Hc64PF7A+bw+Zq9tsVA= Received: from [192.168.2.77] (unknown [116.90.132.105]) (using TLSv1 with cipher AES128-SHA (128/128 bits)) (No client certificate requested) (Authenticated sender: aaron@thelastpickle.com) by homiemail-a59.g.dreamhost.com (Postfix) with ESMTPSA id A45B5564057 for ; Sun, 30 Sep 2012 17:17:50 -0700 (PDT) From: aaron morton Content-Type: multipart/alternative; boundary="Apple-Mail=_B1A0089B-68EC-450B-BA28-DF7323602985" Message-Id: <486AC2B5-3825-4D16-8F6C-D4B3F54E7DDF@thelastpickle.com> Mime-Version: 1.0 (Mac OS X Mail 6.1 \(1498\)) Subject: Re: Date: Mon, 1 Oct 2012 13:17:48 +1300 References: To: user@cassandra.apache.org In-Reply-To: X-Mailer: Apple Mail (2.1498) --Apple-Mail=_B1A0089B-68EC-450B-BA28-DF7323602985 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=iso-8859-1 > I still don't see it in jconsole. It's part of the CF definition.=20 Check the docs for CLI or CQL which ever you are using.=20 > how long would you expect to cost to read a column family of 150000 = rows if it fits into row cache entirely? It takes me around 7s now Assuming you are talking about the client side timing for reading = 150,000 rows with several columns each this does not sound too crazy.=20 Check the server side timing by calling nodetool cfstats before and = after the query, the recent stats will be be since the last time cfstats = was called.=20 Cheers ----------------- Aaron Morton Freelance Developer @aaronmorton http://www.thelastpickle.com On 27/09/2012, at 2:32 PM, Manu Zhang wrote: > I still don't see it in jconsole. BTW, how long would you expect to = cost to read a column family of 150000 rows if it fits into row cache = entirely? It takes me around 7s now. My experiment is done on a single = node. >=20 > On Thu, Sep 27, 2012 at 6:00 AM, aaron morton = wrote: > Set the caching strategy for the CF to be ROWS_ONLY. >=20 > Cheers >=20 > ----------------- > Aaron Morton > Freelance Developer > @aaronmorton > http://www.thelastpickle.com >=20 > On 26/09/2012, at 2:18 PM, Manu Zhang wrote: >=20 >> The DEFAULT_CACHING_STRATEGY is Caching.KEYS_ONLY but even = configuring row cache size to be greater zero=20 >> won't enable row cache. Why?=20 >>=20 >> On Wed, Sep 26, 2012 at 9:44 AM, Manu Zhang = wrote: >> I wonder now if "get_range_slices" call will ever look for data in = row cache. I don't see it in the codebase. Only the "get" call will = check row cache? >>=20 >>=20 >> On Wed, Sep 26, 2012 at 12:11 AM, Charles Brophy = wrote: >> There are settings in cassandra.yaml that will _gradually_ reduce the = available cache to zero if you are under constant memory pressure: >>=20 >> # Set to 1.0 to disable. >> reduce_cache_sizes_at: * >> reduce_cache_capacity_to: * >>=20 >> My experience is that the cache size will not return to the = configured size until a service restart if you leave this enabled. The = text of this setting is not explicit about the long-term cache = shrinkage, so it's easy to think that it will restore the cache to its = configured size after the pressures have subsided. It won't.=20 >>=20 >> Charles >>=20 >> On Tue, Sep 25, 2012 at 8:14 AM, Manu Zhang = wrote: >> I've enabled row cache and set its capacity to 10MB but when I check = its size in jconsole it's always 0. Isn't it that a row will be written = to row cache if it isn't there when I read the row? I've bulk loaded the = data into disk so row cache is crucial to the performance. >>=20 >>=20 >>=20 >=20 >=20 --Apple-Mail=_B1A0089B-68EC-450B-BA28-DF7323602985 Content-Transfer-Encoding: quoted-printable Content-Type: text/html; charset=iso-8859-1 I still don't see it in = jconsole.It's part of the CF = definition. 

Check the docs for CLI or CQL which = ever you are using. 

how long would you expect to cost to read a column family = of 150000 rows if it fits into row cache entirely? It takes me around 7s = now
Assuming you are talking about the client side timing = for reading 150,000 rows with several columns each this does not sound = too crazy. 

Check the server side timing = by calling nodetool cfstats before and after the query, the recent stats = will be be since the last time cfstats was = called. 

Cheers

http://www.thelastpickle.com

On 27/09/2012, at 2:32 PM, Manu Zhang <owenzhang1990@gmail.com> = wrote:

I still don't see it in jconsole. BTW, how long would you = expect to cost to read a column family of 150000 rows if it fits into = row cache entirely? It takes me around 7s now. My experiment is done on = a single node.

On Thu, Sep 27, 2012 at 6:00 AM, aaron = morton <aaron@thelastpickle.com> = wrote:
Set the caching strategy for the CF = to be ROWS_ONLY.

Cheers

-----------------
Aaron Morton
Freelance = Developer
@aaronmorton

On 26/09/2012, at 2:18 PM, Manu Zhang <owenzhang1990@gmail.com> = wrote:

The DEFAULT_CACHING_STRATEGY = is Caching.KEYS_ONLY but even configuring row cache size to be greater = zero 
 won't enable row cache. Why? 

On Wed, Sep 26, 2012 at 9:44 AM, Manu Zhang <owenzhang1990@gmail.com> wrote:
I wonder now if = "get_range_slices" call will ever look for data in row cache. I don't = see it in the codebase. Only the "get" call will check row cache?


On Wed, Sep 26, 2012 at 12:11 = AM, Charles Brophy <cbrophy@zulily.com> wrote:
There are settings in = cassandra.yaml that will _gradually_ reduce the available cache to zero = if you are under constant memory pressure:

 # Set to 1.0 to disable. =  <snip>
reduce_cache_sizes_at: *
reduce_cache_capacity_to: *

My experience is = that the cache size will not return to the configured size until a = service restart if you leave this enabled.  The text of this = setting is not explicit about the long-term cache shrinkage, so it's = easy to think that it will restore the cache to its configured size = after the pressures have subsided. It won't. 

Charles

On Tue, Sep 25, 2012 at 8:14 AM, Manu Zhang <owenzhang1990@gmail.com> wrote:
I've enabled row cache = and set its capacity to 10MB but when I check its size in jconsole it's = always 0. Isn't it that a row will be written to row cache if it isn't = there when I read the row? I've bulk loaded the data into disk so row = cache is crucial to the performance.



=


= --Apple-Mail=_B1A0089B-68EC-450B-BA28-DF7323602985--