配置cassandra以使用不同的网络接口进行数据流和客户端连接?

时间:2014-12-10 22:51:55

标签: cassandra cassandra-2.0 cassandra-cli

我有一个使用3个cassandra节点部署的cassandra集群,复制因子为3.我每天都会向cassandra写入大量数据(10-15GB)。我按照"大数据社区"所建议的那样在商品硬件上配置了这些cassandra。我希望节点经常停机,这是使用cassandra提供的冗余处理的。

我的问题是,我已经观察到cassandra在配置新节点并且在引导时流式传输数据时会减慢写入速度。因此,为了克服这个障碍,我们决定为节点间通信和客户端应用程序提供单独的网络接口,以便将数据写入cassandra。我的问题是如何配置,如果可能的话?

感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

我认为你正在追逐错误的解决方案。

我对你只有3个节点的事实感到困惑,但你担心的是引导时写入速度慢。为什么?您是否计划定期发展群集?您的写入一致性水平是多少,因为这会对性能产生很大影响?显然,如果您只有2个或3个节点而且您正在尝试引导,那么您将看到速度减慢,因为您正在占用群集的很大一部分来进行流式传输。

请注意"商品硬件"并不意味着廉价,低性能的硬件。这只意味着您不需要用于Oracle等数据库的超高端数据库级机器。您仍然应该使用非常好的商品硬件。您可能还需要更多节点,因为设置RF等于群集大小通常不是一个好主意。

话虽如此,您可以将listen_address设置为节点间接口,将rpc_address设置为客户端地址,如果您觉得这样做有帮助的话。