首页 文章

spark-cassandra-connector性能:执行程序似乎处于空闲状态

提问于
浏览
3

在我们的40个节点集群(33个火花 Actuator / 5个节点cassandra)上,我们在cassandra表(带有 .saveToCassandra )中插入了大约20 000个每分钟(以及其他东西)的火花流 . 我们得到的结果是:

enter image description here

如果我理解正确的话,执行者 S3S14S19 会在75%的时间内闲置并阻止阶段结束......这样的资源浪费!而且性能下降 .

以下是我的SparkContext的conf选项:

.set("spark.cassandra.output.batch.size.rows", "5120")
  .set("spark.cassandra.output.concurrent.writes", "100")
  .set("spark.cassandra.output.batch.size.bytes", "100000")
  .set("spark.cassandra.connection.keep_alive_ms","60000")

这种行为是否正常?如果不是,我应该调整上述设置以避免它?问题来自spark-cassandra-connector写入还是其他什么?

1 回答

  • 0

    乍一看,我怀疑这是一个cassandra连接器问题 . 我们目前正在做.saveToCassandra,每分钟有300,000条记录和更小的集群 .

    如果是.saveToCassandra花了很长时间,你往往会看到很长的任务 . 您所看到的是任务之间无法解释(?)的差距 .

    这将需要更多的信息来追踪这一点 . 从“工作”选项卡开始 - 您是否看到任何工作需要很长时间?深入了解,你看到了什么?

相关问题