Local/Remote Cassandra 中的主机

Local/Remote hosts in Cassandra

给定一个集群,不同节点究竟如何标记为 remote/local?它取决于每个查询的基础吗? 目前,我是这样想的->对于客户端发送到 Cassandra 集群的每个查询,将选择一个协调器节点(基于负载平衡策略)。与协调器节点属于同一数据中心的所有节点将称为本地节点,其余所有节点将是给定查询的远程节点。 这个对吗?

是的,从协调员的角度来看是正确的。但也有一个驱动程序的角度 - 当您使用具有 DC-aware 策略的驱动程序时,您指定什么 DC 对您来说是本地的(在 C++ 中通过 cass_cluster_set_load_balance_dc_aware 函数),驱动程序使用此数据 select 正确节点(基于其他策略)。