On Mon, Sep 13, 2021 at 10:58 AM S G <sg.online.em...@gmail.com> wrote:

> Hello,
>
> As mentioned in https://cassandra.apache.org/_/cassandra-basics.html, can
> someone clarify how many coordinator nodes are there in the cluster at any
> given time?
>
>    1. Is there a dedicated *single* coordinator node in the whole cluster
>    that changes from time to time?
>    2. Or any node becomes a coordinator node when the client-request
>    lands on it?
>
>
> I am assuming it is the latter because the former will make the
> coordinator node a SPOF.
>

Every host with binary/native enabled can act as a coordinator.


>
> As an example, if we have a 100 node cluster and there are no hot
> partitions etc, then is it fair to say that at any given time, generally
> speaking, each node will be acting as a coordinator node for an equal
> number of requests?
>

Assuming your clients are using token-aware load balancing/routing, yes.


> So for each request, there is a single coordinator node.
>

Yes (modulo retries)


> But for all requests at a given time, the coordinator nodes are equally
> distributed among the cluster.
>
>
This is the typical behavior, yes.



> Assumption: The client is intelligent enough and not sending traffic to
> just a single node.
>
> Thanks in advance for clarifying !
>


There's an asterisk here that you CAN do an advanced model where you
DONT enable native/binary on every host, and instead only do it on a subset
of hosts, and disable storage on those hosts (-Dcassandra.join_ring=false)
and then you build effectively a stateless coordination tier in front of
the storage hosts. That's relatively rare/advanced, but strictly possible.

- Jeff

Reply via email to