首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >星火作业失败:删除没有最近心跳的BlockManager

星火作业失败:删除没有最近心跳的BlockManager
EN

Stack Overflow用户
提问于 2015-05-15 14:08:36
回答 1查看 3K关注 0票数 1

我正在使用datastax-4.6。我创建了一个cassandra表并存储了2 2crore记录。我试着用scala读取数据。对于少数记录,该代码工作正常,但当我试图检索所有2 2crore记录时,它会显示以下错误。

代码语言:javascript
复制
 **WARN BlockManagerMasterActor: Removing BlockManager BlockManagerId(1, 172.20.98.17, 34224, 0) with no recent heart beats: 140948ms exceeds 45000ms

15/05/15 19:34:06 ERROR ConnectionManager: Corresponding SendingConnection to ConnectionManagerId(C15759,34224) not found**

有什么帮助吗?

EN

回答 1

Stack Overflow用户

发布于 2015-05-16 01:16:36

这个问题通常与气相色谱压力有关。

调整超时

增加spark.storage.blockManagerHeartBeatMs,以便Spark等待GC暂停结束。

SPARK 734建议设置-Dspark.worker.timeout=30000 -Dspark.akka.timeout=30000 -Dspark.storage.blockManagerHeartBeatMs=30000 -Dspark.akka.retry.wait=30000 -Dspark.akka.frameSize=10000

为JVM优化作业

spark.cassandra.input.split.size -将允许您更改您的卡桑德拉读取的并行级别。更大的分割大小意味着更多的数据必须同时驻留在内存中。

spark.storage.memoryFraction和spark.shuffle.memoryFraction -将被RDDs占用的堆的数量(而不是洗牌内存和火花开销)。如果您没有做任何洗牌,您可以增加这个值。databricks的人说,这样做的大小与你的老一代相似。

spark.executor.memory -显然这取决于您的硬件。每一个DataBricks,你可以做高达55 to。确保为C*以及操作系统和OS页面缓存留出足够的RAM。记住,长时间的GC暂停发生在更大的堆上。

出于好奇,,你会经常用火花提取你的整个C*表吗?用例是什么?

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30261608

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档