博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
troubleshooting 解决算子函数返回NULL导致问题
阅读量:6984 次
发布时间:2019-06-27

本文共 742 字,大约阅读时间需要 2 分钟。

hot3.png

在算子函数中,返回null

return actionRDD.mapToPair(new PairFunction
() {    private static final long serialVersionUID = 1L;                @Override    public Tuple2
call(Row row) throws Exception {        return new Tuple2
("-999", RowFactory.createRow("-999"));      }            });

大家可以看到,在有些算子函数里面,是需要我们有一个返回值的。但是,有时候,我们可能对某些值,

就是不想有什么返回值。我们如果直接返回NULL的话,会报错的!!!

Scala.Math(NULL),异常

如果碰到你的确是对于某些值,不想要有返回值的话,有一个解决的办法:

  1. 在返回的时候,返回一些特殊的值,不要返回null,比如“-999”
  2. 在通过算子获取到了一个RDD之后,可以对这个RDD执行filter操作,进行数据过滤。filter内,可以对数据进行判定,如果是-999,那么就返回false,给过滤掉就可以了。
  3. 大家不要忘了,之前咱们讲过的那个算子调优里面的coalesce算子,在filter之后,可以使用coalesce算子压缩一下RDD的partition的数量,让各个partition的数据比较紧凑一些。也能提升一些性能。

转载于:https://my.oschina.net/rosetta/blog/778224

你可能感兴趣的文章
需求管理工具比较 Doors_Requistie Pro_RDM
查看>>
centos+php+nginx的php.ini无法加载的问题
查看>>
从菜鸟到专家的五步编程语言学习法
查看>>
RequestQueue
查看>>
Android TextView 属性设置
查看>>
html元素分类以及嵌套规则
查看>>
android dpi
查看>>
C语言的预处理、编译、汇编、链接
查看>>
魅族 C++ 微服务框架技术内幕揭秘
查看>>
flask 学习笔记 mvc ,sqlalchemy(insert,update)
查看>>
HTML基础(一)
查看>>
EGOImageView 解析
查看>>
我的友情链接
查看>>
1.解读REST和JAX-RS
查看>>
将RHEL7/centos7系统网卡名称eno16777736改为eth0
查看>>
Nginx域名跳转
查看>>
NTP时间服务器安装
查看>>
Thinkphp3.23 关联模型relation方法不存在解决方法
查看>>
bash脚本编程之一 条件判断及算术运算
查看>>
工作中非常逆天的shell命令
查看>>