Apache spark cassandra集群中的大量写入会导致节点失败

Apache spark cassandra集群中的大量写入会导致节点失败,apache-spark,cassandra,spark-cassandra-connector,Apache Spark,Cassandra,Spark Cassandra Connector,我必须读取大量要写入另一个表的表条目。因此,我编写了一个java+scala程序,它使用rdd扫描源表,并在目标表中写入每个条目。该程序被提交到spark群集,该群集连接到位于amazon的cassandra群集,并具有以下设置: Spark cluster有一个主机和四个从机,每个从机有8个内核和16gb的ram cassandra cluster有三个节点,每个节点有8个内核,32gb的ram,标准的HDD提供源表和目标表,sdd提供提交日志 密钥集由三个cassandra节点分布,这意

我必须读取大量要写入另一个表的表条目。因此,我编写了一个java+scala程序,它使用rdd扫描源表,并在目标表中写入每个条目。该程序被提交到spark群集,该群集连接到位于amazon的cassandra群集,并具有以下设置:

  • Spark cluster有一个主机和四个从机,每个从机有8个内核和16gb的ram

  • cassandra cluster有三个节点,每个节点有8个内核,32gb的ram,标准的HDD提供源表和目标表,sdd提供提交日志

密钥集由三个cassandra节点分布,这意味着该集群不具有容错性。在最初的8-16小时内,一切都正常工作,而且资源使用情况似乎并不表明cassandra可能过载(至少一开始不是这样,一夜之间也不确定)

不幸的是,几个小时后,一个节点以不一致的模式版本结束,因此集群失败。我正在努力确定发生这种情况的可能原因,欢迎提供任何建议

谢谢你抽出时间


根据要求提供更多配置详细信息:

并发压缩程序:默认值(磁盘数或内核数较小,每个CPU内核最少2个,最多8个)

每秒压缩吞吐量:默认值(16)


压缩策略:默认值(大小分层压缩策略)

在架构版本不一致之前,system.log中是否存在任何其他错误?配置中的并发压缩程序和压缩吞吐量每秒mb参数是什么?您正在谈论的表的压缩策略是什么?