一.引言

Spark 使用 RDD 调用 Filter 函数时,dirver 端卡住,报错 ReturnStatementInClosureException: Return statements aren't allowed in Spark closures,即闭包内无法使用 return 函数:

二.使用场景

使用 rdd.filter 方法过滤 id 时使用了 return 方法,导致上述报错:

    rdd.filter(arr => {val id = arr(0)val l = id.length()if (l <= 8) return falseif (id.startsWith("1")) {true} else {false}})

修改方案:

闭包函数内不使用 return 关键字即可

    rdd.filter(arr => {val id = arr(0)val l = id.length()if (l <= 8) {false} else if (id.startsWith("1")) {true} else {false}})

Spark - ReturnStatementInClosureException: Return statements aren‘t allowed in Spark closures相关推荐

  1. Spark ShuffleManager内存缓冲器SortShuffleWriter设计思路剖析-Spark商业环境实战

    本套系列博客从真实商业环境抽取案例进行总结和分享,并给出Spark源码解读及商业实战指导,请持续关注本套博客.版权声明:本套Spark源码解读及商业实战归作者(秦凯新)所有,禁止转载,欢迎学习. Sp ...

  2. Spark修炼之道(高级篇)——Spark源码阅读:第九节 Task执行成功时的结果处理...

    Task执行成功时的结果处理 在上一节中,给出了Task在Executor上的运行代码演示,我们知道代码的最终运行通过的是TaskRunner方法 class TaskRunner(execBacke ...

  3. 添加spark.yarn.jars 解决 WARN yarn.Client: Neither spark.yarn.jars nor spark.yarn.archive is set,

    一:问题现象: 在spark on yarn 提交任务是,提示如下: WARN yarn.Client: Neither spark.yarn.jars nor spark.yarn.archive ...

  4. java spark 环境_在 IntelliJ IDEA 中配置 Spark(Java API) 运行环境

    1. 新建Maven项目 初始Maven项目完成后,初始的配置(pom.xml)如下: 2. 配置Maven 向项目里新建Spark Core库 xmlns:xsi="http://www. ...

  5. spark系列-应用篇之通过livy提交Spark任务

    #前言 上一篇使用yarn api的提交spark任务比较麻烦, 这次我们使用livy来提交spark任务.livy的使用十分简单,功能上比yarn api还要强大,支持提交spark代码片断,ses ...

  6. Spark SQL与外部数据源的操作(Spark SQL ——> CSV/JSON/Parquet/hive/mysql)

    目录 一.Spark SQL支持的外部数据源 二.Spark SQL -> CSV 2.1 读CSV文件 a.有列名 b.无列名 2.2 写CSV文件 三.Spark SQL -> JSO ...

  7. 深入分析Spark任务调度的原理--Java后端同学入门Spark编程系列

    作者:陌北有棵树,Java人,架构师社区合伙人! 之前写了一篇:<我作为Java后端,分享一下入门Spark编程的经历!> 上篇是Spark入门的第一篇,写了一些关于Spark编程中RDD ...

  8. spark sql 本地调试_Spark精华问答|Spark的三种运行模式有何区别?

    戳蓝字"CSDN云计算"关注我们哦! Spark是一个针对超大数据集合的低延迟的集群分布式计算系统,比MapReducer快40倍左右,是hadoop的升级版本,Hadoop作为第 ...

  9. Spark详解(十二):Spark Streaming原理和实现

    1 简介 SparkStreaming是Spark核心API的一个扩展,具有高吞吐量和容错能力的实时流数据处理系统,可以对多种数据源(如Kdfka.Flume.Twitter.Zero和TCP 套接字 ...

最新文章

  1. 1.1 VMware 一步一步创建虚拟机
  2. Python Django 装饰器模式之三阶装饰器
  3. CODEVS 1205 单词反转
  4. Cyclone IV FPGA 器件笔记
  5. vue中axios访问Java后端跨域问题解决
  6. 反击ARP欺骗 我和网络执法官的战斗
  7. iOS.数据持久化.PersistenceLayer.属性列表
  8. Java-集合练习题
  9. 【一周头条盘点】中国软件网(2018.1.15~2018.1.19)
  10. 内存free和available区别
  11. 删除Windows11中设备与驱动器下的多余图标
  12. linux Ubuntu 报错:No command ‘setenv‘ found
  13. 学科实践活动感悟50字_社会实践心得体会50字
  14. WordPress必装插件推荐
  15. EE4408: Machine Learning:
  16. java 取年份后两位_java获取年份的后两位
  17. 复杂网络上的传播动力学
  18. 【4月比赛合集】55场可报名的数据挖掘奖金赛,任君挑选!
  19. GD32时钟设置与获取
  20. 计算机考试 虚拟机,虚拟机在全国计算机等级考试机试中的应用.doc

热门文章

  1. 二维码生成并在下方添加文字,打包下载
  2. Ubuntu 16.04 常用软件安装命令
  3. VMware中安装Kali一步解决(7z格式)
  4. oracle-01441,ORA-01441:无法减小列长度,因为一些值过大
  5. 【NOIP模拟赛】铁路运输
  6. 【经验分享】如何同时运行多个python脚本
  7. 【githubboy】如何使用 QGIS 和 Blender 软件,制作带有阴影效果的浮雕地图
  8. 剑指Offer——P32——之字形打印二叉树
  9. MFC对话框如何使用工具栏并修改工具栏的背景颜色与自绘对话框统一(二)
  10. 关于Windows上地址空间布局随机化防御机制的分析(下)