当前位置: 首页 > 知识库问答 >
问题:

spark-cassandra-connector性能:执行器似乎空闲

孙阳旭
2023-03-14

在我们的40个节点集群(33个spark Executors/5个节点cassandra)上,使用spark-streaming我们每分钟在cassandra表中插入大约20,000个(除其他外)(with.saveTocassandra)。我们得到的结果是:

如果我理解正确的话,执行器S3S14S1975%的时间是空闲的,并阻止阶段完成······这样的资源浪费!和性能损失。

以下是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")

共有1个答案

汪晨
2023-03-14

乍一看,我怀疑这是cassandra连接器的问题。我们目前正在做。SaveToCassandra,每分钟有30万条记录,还有更小的集群。

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

要找到这一点需要更多的信息。从工作选项卡开始--你看到有什么工作需要很长时间吗?往下钻,你看到什么了?

 类似资料:
  • 如何为版本设置以下属性: 本质上,我想设置它,以便应该有0个连接到我的远程dc的客户端,也应该有0个读/写。一切都应该是我正在磨合的DC本地的。 将设置为本地DC是否会达到相同的效果?

  • 是否可以将Spark cassandra connector Java API与Spark 2.0+一起使用? 我看到spark-cassandra-connector-java2.11的最新版本是1.6.0-M1。 有人知道连接器的Java API的未来吗? 沙伊

  • 我是Spark和Cassandra的新学员。我正面临着一个主要的性能问题,我在Spark中每5秒将来自Kafka的数据流化,然后使用JRI在R语言中对数据执行分析,最后将数据保存到Cassandra各自的列族中。将数据保存到Cassandra的持续时间(以毫秒为单位)随着输入请求的数量迅速增加[每个请求为200KB]。 火花代码:

  • 谁能告诉我为什么火花连接器要花这么多时间插入?我在代码中做了什么错误吗?或者使用spark-cassandra连接器进行插入操作是否不可取?

  • 我有一个关于这个连接器的问题。如果我的Spark集群和Cassandra集群不在同一个集群上,读取如何工作?Spark是否将整个Cassandra表带入自己的集群并将其重新排列到Spark分区中?

  • 因此,这是我第一次使用JBehave,我试图在项目中创建第一个JBehave,但目前似乎测试没有执行这些步骤。最后,测试表明所有测试用例都通过了,没有任何问题,但实际上它们根本没有被执行。我在每个步骤方法中都设置了断点,而且我的调试器根本不会阻止我,更不用说这些步骤当前抛出的异常了。 和测试执行器: 你知道有什么问题吗?