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: Improving write performance in Cassandra and a few related issues...
Date Thu, 19 Dec 2013 21:40:51 GMT
> Thanks for the reply.  By packet drops I mean, the client is not able to read the shared
memory as fast as the software switch is writing into it..
> 
> 
What is the error you are getting on the client ? 

>    Also, I would like to know if in general , distribution of write requests to different
Casaandra nodes instead of only to one, leads to increased write performance in Cassandra.
> 
In general yes, clients should distribute their writes. 

>    Is there any particular way in which write performance can be measured, preferably
from the client???
> 
> 
Logging at the client level ? 

Cheers


-----------------
Aaron Morton
New Zealand
@aaronmorton

Co-Founder & Principal Consultant
Apache Cassandra Consulting
http://www.thelastpickle.com

On 18/12/2013, at 5:02 pm, Krishna Chaitanya <bnsk1990rulz@gmail.com> wrote:

> Thanks for the reply.  By packet drops I mean, the client is not able to read the shared
memory as fast as the software switch is writing into it..
>       I doubt its the issue with the client but can you in particular issues that could
cause this type of scenario?
>    Also, I would like to know if in general , distribution of write requests to different
Casaandra nodes instead of only to one, leads to increased write performance in Cassandra.
>    Is there any particular way in which write performance can be measured, preferably
from the client???
> 
> On Dec 18, 2013 8:30 AM, "Aaron Morton" <aaron@thelastpickle.com> wrote:
>> rite throughput is remaining at around 460 pkts/sec or sometimes even falling below
that rate as against the expected rate of around 920 pkts/sec. Is it some kind of limitation
of Cassandra or am I doing something wrong??? 
> There is nothing in cassandra that would make that happen. Double check your client.

> 
>>                                                            I also see an increase
in packet drops when I try to store the packets from both the hosts into the same keyspace.
The packets are getting collected properly followed by intervals in which they are being dropped
in both the systems, at the same time. Could this be some kind of a buffer issue??? 
> What do you mean by packet drops ? 
> 
> Do you mean dropped messages in cassandra ? 
> 
>> Also, can write throughput be increased by distributing the write requests between
the 2 Cassandra nodes instead of sending the requests to a single node? Currently, I dont
see any improvement even  if I distribute the write requests to different hosts. How can I
improve the write performance overall?
> Normally we expect 3k to 4k non counter writes per core per node, if you are not seeing
that it may be configuration or the client. 
> 
> Hope that helps. 
>  
> -----------------
> Aaron Morton
> New Zealand
> @aaronmorton
> 
> Co-Founder & Principal Consultant
> Apache Cassandra Consulting
> http://www.thelastpickle.com
> 
> On 15/12/2013, at 7:51 pm, Krishna Chaitanya <bnsk1990rulz@gmail.com> wrote:
> 
>> Hello,
>>        I am a newbie to the Cassandra world and have a few doubts which I wanted
to clarify. I am having a software switch that stores netflow packets into a shared memory
segment and a daemon that reads that memory segment and stores them into a 2-node Cassandra
cluster. Currently, I am storing the packets from 2 hosts into 2 different keyspaces, hence
only writes and no reads. The write throughput is coming to around 460 pkts/sec in each of
the keyspaces. But, when I try to store the packets into the same keyspace, I observe that
the write throughput is remaining at around 460 pkts/sec or sometimes even falling below that
rate as against the expected rate of around 920 pkts/sec. Is it some kind of limitation of
Cassandra or am I doing something wrong??? 
>>                                                            I also see an increase
in packet drops when I try to store the packets from both the hosts into the same keyspace.
The packets are getting collected properly followed by intervals in which they are being dropped
in both the systems, at the same time. Could this be some kind of a buffer issue??? 
>>                               The write requests from both the systems are sent to
the same node which is also the seed node. I am mostly using the default Cassandra configuration
with replication_factor set to 1 and without durable_writes. The systems are i5s with 4 gb
RAM. The data model is: each second is the row key with all the packets collected in that
second as the columns. Also, can write throughput be increased by distributing the write requests
between the 2 Cassandra nodes instead of sending the requests to a single node? Currently,
I dont see any improvement even  if I distribute the write requests to different hosts. How
can I improve the write performance overall?
>> 
>> Thanks.
>> -- 
>> Regards,
>> BNSK.
> 


Mime
View raw message