小编dbu*_*osp的帖子

Spark数据集超出了总RAM大小

我最近在进行火花工作,遇到了一些我仍然无法解决的查询。

假设我有一个100GB的数据集,而我的群集内存大小为16 GB。

现在,我知道在简单读取文件并将其保存在HDFS中的情况下,Spark会对每个分区执行此操作。对100GB数据执行排序或聚合转换时会发生什么?由于排序时需要全部数据,它将如何处理100GB的内存?

我已经浏览了下面的链接,但这仅告诉我们在持久存在的情况下spark会执行什么操作,我正在寻找的是Spark聚合或对大于ram大小的数据集进行排序。

Spark RDD-分区是否始终在RAM中?

任何帮助表示赞赏。

hadoop hdfs apache-spark

2
推荐指数
1
解决办法
738
查看次数

区域丢失后从 Dataflow 恢复 PubSub Acked 消息

我一直在阅读有关 DataFlow 在读取流数据时如何确认消息的内容。基于这里这里的答案的答案,似乎 DataFlow 按捆绑“确认”消息,只要完成捆绑,就会“确认”其中的消息。

混乱n是当GroupByKey管道中涉及到a时会发生什么。捆绑包中的数据将持久保存到多区域存储桶中,并且消息将得到确认。然后想象整个地区都崩溃了。中间数据仍然会在桶中(因为我们是多区域的)。

话虽如此,

  1. 为了不丢失任何数据,需要遵循哪些步骤?
  2. 关于如何处理这种主动/主动方法以便在区域完全关闭时不丢失数据有什么建议吗?

请指教,

google-cloud-platform google-cloud-pubsub google-cloud-dataflow

2
推荐指数
1
解决办法
670
查看次数