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 8409AD4BD for ; Wed, 22 May 2013 14:17:31 +0000 (UTC) Received: (qmail 90351 invoked by uid 500); 22 May 2013 14:17:29 -0000 Delivered-To: apmail-cassandra-user-archive@cassandra.apache.org Received: (qmail 90193 invoked by uid 500); 22 May 2013 14:17:29 -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 90153 invoked by uid 99); 22 May 2013 14:17:27 -0000 Received: from nike.apache.org (HELO nike.apache.org) (192.87.106.230) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 May 2013 14:17:27 +0000 X-ASF-Spam-Status: No, hits=2.2 required=5.0 tests=HTML_MESSAGE,TO_NO_BRKTS_PCNT X-Spam-Check-By: apache.org Received-SPF: error (nike.apache.org: local policy) Received: from [92.60.177.132] (HELO web1.alefhost.od.ua) (92.60.177.132) by apache.org (qpsmtpd/0.29) with ESMTP; Wed, 22 May 2013 14:17:20 +0000 Received: from [10.0.2.15] (212-178-2-103.broadband.tenet.odessa.ua [212.178.2.103]) by web1.alefhost.od.ua (Postfix) with ESMTPSA id 8D18E6E35C for ; Wed, 22 May 2013 17:16:52 +0300 (EEST) Message-ID: <519CD0FB.6030609@4friends.od.ua> Date: Wed, 22 May 2013 17:06:51 +0300 From: Igor User-Agent: Mozilla/5.0 (X11; Linux i686; rv:17.0) Gecko/20130329 Thunderbird/17.0.5 MIME-Version: 1.0 To: user@cassandra.apache.org Subject: Re: High performance disk io References: <00ad01ce56f1$f3199450$d94cbcf0$@struq.com> In-Reply-To: <00ad01ce56f1$f3199450$d94cbcf0$@struq.com> Content-Type: multipart/alternative; boundary="------------040605010409020900020800" X-Virus-Checked: Checked by ClamAV on apache.org This is a multi-part message in MIME format. --------------040605010409020900020800 Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit Hello What level of read performance do you expect? We have limit 15 ms for 99 percentile with average read latency near 0.9ms. For some CF 99 percentile actually equals to 2ms, for other - to 10ms, this depends on the data volume you read in each query. Tuning read performance involved cleaning up data model, tuning cassandra.yaml, switching from Hector to astyanax, tuning OS parameters. On 05/22/2013 04:40 PM, Christopher Wirt wrote: > > Hello, > > We're looking at deploying a new ring where we want the best possible > read performance. > > We've setup a cluster with 6 nodes, replication level 3, 32Gb of > memory, 8Gb Heap, 800Mb keycache, each holding 40/50Gb of data on a > 200Gb SSD and 500Gb SATA for OS and commitlog > > Three column families > > ColFamily1 50% of the load and data > > ColFamily2 35% of the load and data > > ColFamily3 15% of the load and data > > At the moment we are still seeing around 20% disk utilisation and > occasionally as high as 40/50% on some nodes at peak time.. we are > conducting some semi live testing. > > CPU looks fine, memory is fine, keycache hit rate is about 80% (could > be better, so maybe we should be increasing the keycache size?) > > Anyway, we're looking into what we can do to improve this. > > One conversion we are having at the moment is around the SSD disk setup.. > > We are considering moving to have 3 smaller SSD drives and spreading > the data across those. > > The possibilities are: > > -We have a RAID0 of the smaller SSDs and hope that improves performance. > > Will this acutally yield better throughput? > > -We mount the SSDs to different directories and define multiple data > directories in Cassandra.yaml. > > Will not having a layer of RAID controller improve the throughput? > > -We mount the SSDs to different columns family directories and have a > single data directory declared in Cassandra.yaml. > > Think this is quite attractive idea. > > What are the drawbacks? System column families will be on the main SATA? > > -We don't change anything and just keep upping our keycache. > > -Anything you guys can think of. > > Ideas and thoughts welcome. Thanks for your time and expertise. > > Chris > --------------040605010409020900020800 Content-Type: text/html; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit
Hello

What level of read performance do you expect? We have limit 15 ms for 99 percentile with average read latency near 0.9ms. For some CF 99 percentile actually equals to 2ms, for other - to 10ms, this depends on the data volume you read in each query.

Tuning read performance involved cleaning up data model, tuning cassandra.yaml, switching from Hector to astyanax, tuning OS parameters.

On 05/22/2013 04:40 PM, Christopher Wirt wrote:

Hello,

 

We’re looking at deploying a new ring where we want the best possible read performance.

 

We’ve setup a cluster with 6 nodes, replication level 3, 32Gb of memory, 8Gb Heap, 800Mb keycache, each holding 40/50Gb of data on a 200Gb SSD and 500Gb SATA for OS and commitlog

Three column families

ColFamily1 50% of the load and data

ColFamily2 35% of the load and data

ColFamily3 15% of the load and data

 

At the moment we are still seeing around 20% disk utilisation and occasionally as high as 40/50% on some nodes at peak time.. we are conducting some semi live testing.

CPU looks fine, memory is fine, keycache hit rate is about 80% (could be better, so maybe we should be increasing the keycache size?)

 

Anyway, we’re looking into what we can do to improve this.

 

One conversion we are having at the moment is around the SSD disk setup..

 

We are considering moving to have 3 smaller SSD drives and spreading the data across those.

 

The possibilities are:

-We have a RAID0 of the smaller SSDs and hope that improves performance.

Will this acutally yield better throughput?

 

-We mount the SSDs to different directories and define multiple data directories in Cassandra.yaml.

Will not having a layer of RAID controller improve the throughput?

 

-We mount the SSDs to different columns family directories and have a single data directory declared in Cassandra.yaml.

Think this is quite attractive idea.

What are the drawbacks? System column families will be on the main SATA?

 

-We don’t change anything and just keep upping our keycache.

-Anything you guys can think of.

 

Ideas and thoughts welcome. Thanks for your time and expertise.

 

Chris

 

 


--------------040605010409020900020800--