cassandra-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Shannon Carey <sca...@expedia.com>
Subject Re: ONE has much higher latency than LOCAL_ONE
Date Wed, 22 Mar 2017 16:21:09 GMT
I understand all that, but it doesn't explain why the latency increases. The requests are not
going to a remote DC. I know this because currently all requests are going to the client in
one particular DC. The read request rate of the Cassandra nodes in the other DC remained flat
(near zero) the whole time, compared to ~200read/s on the Cassandra nodes in the DC local
to the client doing the reads. This is expected, because the DCAwareRoundRobinPolicy will
cause local nodes to be used preferentially whenever possible. What's not expected is the
dramatic latency increase. Btw this client is read-only: no writes.


From: Eric Plowe <eric.plowe@gmail.com<mailto:eric.plowe@gmail.com>>
Reply-To: "user@cassandra.apache.org<mailto:user@cassandra.apache.org>" <user@cassandra.apache.org<mailto:user@cassandra.apache.org>>
Date: Tuesday, March 21, 2017 at 7:23 PM
To: "user@cassandra.apache.org<mailto:user@cassandra.apache.org>" <user@cassandra.apache.org<mailto:user@cassandra.apache.org>>
Subject: Re: ONE has much higher latency than LOCAL_ONE

ONE means at least one replica node to ack the write, but doesn't require that the coordinator
route the request to a node in the local data center.

LOCAL_ONE was introduced to handle the case of when you have multiple data centers and cross
data center traffic is not desirable.

In multiple datacenter clusters, a consistency level of ONE is often desirable, but cross-DC
traffic is not. LOCAL_ONEaccomplishes this. For security and quality reasons, you can use
this consistency level in an offline datacenter to prevent automatic connection to online
nodes in other datacenters if an offline node goes down.

From: https://docs.datastax.com/en/cassandra/2.1/cassandra/dml/dml_config_consistency_c.html

Regards,

Eric

On Tue, Mar 21, 2017 at 7:49 PM Shannon Carey <scarey@expedia.com<mailto:scarey@expedia.com>>
wrote:
The cluster is in two DCs, and yes the client is deployed locally to each DC.

From: Matija Gobec <matija0204@gmail.com<mailto:matija0204@gmail.com>>
Reply-To: "user@cassandra.apache.org<mailto:user@cassandra.apache.org>" <user@cassandra.apache.org<mailto:user@cassandra.apache.org>>
Date: Tuesday, March 21, 2017 at 2:56 PM
To: "user@cassandra.apache.org<mailto:user@cassandra.apache.org>" <user@cassandra.apache.org<mailto:user@cassandra.apache.org>>
Subject: Re: ONE has much higher latency than LOCAL_ONE

Are you running a multi DC cluster? If yes do you have application in both data centers/regions
?

On Tue, Mar 21, 2017 at 8:07 PM, Shannon Carey <scarey@expedia.com<mailto:scarey@expedia.com>>
wrote:
I am seeing unexpected behavior: consistency level ONE increases read latency 99th percentile
to ~108ms (95th percentile to 5ms-90ms) up from ~5ms (99th percentile) when using LOCAL_ONE.

I am using DSE 5.0 with Datastax client 3.0.0. The client is configured with a TokenAwarePolicy
wrapping a DCAwareRoundRobinPolicy with usedHostsPerRemoteDc set to a very high number. Cassandra
cluster has two datacenters.

I would expect that when the cluster is operating normally (all local nodes reachable), ONE
would behave the same as LOCAL_ONE. The  Does anyone know why this is not the case?

Mime
View raw message