我们可以在Cassandra一次拥有多个协调节点吗?

时间:2018-03-09 11:30:30

标签: apache-spark cassandra parallel-processing nodes distributed

希望这是一个正确的地方!

我正在尝试使用spark,cassandra和另外一个外部工具来设置群集。因此,外部工具在spark(管道命令)的帮助下在整个集群中并行执行,该工具可以通过简单的sql Insert命令直接存储到cassandra数据库(见下图)。这意味着在每个节点中,结果从节点的外部工具直接发送到节点的cassandra。

我的猜测/疑问/问题是这些节点中的每一个都将充当协调节点,并且将负责根据主/分区密钥同时将数据分发/发送到其他节点。是对的吗?如果不是......会发生什么?

external_tool_to_cassandra

1 个答案:

答案 0 :(得分:1)

每个Cassandra节点都可以充当协调者。如果您的工具已正确配置为使用TokenAwarePolicy,则您的工具应为每个请求选择副本作为协调器,从而避免一些额外的网络跃点。如果在批处理中插入,请尝试使用相同的分区键将数据批处理。

请注意,在您的图表中,您将获得直接从Spark写入Cassandra的更好性能。你可以使用spark-cassandra-connector。