about云开发-活到老 学到老

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 1799|回复: 16

spark生成HFile bulkload到hbase 延伸二

[复制链接]

32

主题

3

听众

0

收听

中级会员

Rank: 3Rank: 3

积分
661
发表于 2018-3-14 11:31:25 | 显示全部楼层 |阅读模式

各位大神,新问题来了。。

Caused by: java.lang.ClassCastException: cannot assign instance of scala.collection.immutable.List$SerializationProxy to field org.apache.spark.sql.execution.FilterExec.otherPreds of type scala.collection.Seq in instance of org.apache.spark.sql.execution.FilterExec
这个异常是在idea里 setMaster(“spark://master:7077“) 模式下发生

我的业务是这样:从关系型数据库读出数据集,对数据集的某些指定的字段,它们的值为空的的整条记录过滤掉,过滤完的数据集进行拼接,格式为

<ImmutableWritable,KeyValue>, ImmutableWritable就是我指定的某几个字段拼接起来的rowkey,而KeyValue,Key是rowkey,Value:列族+列名+列值

这样生成文件 然后进行ImmutableWritable的排序 排完序再生成HFile 然后saveAsNewHadoopFile  最后bulkload到hbase

第二个问题发生在我把代码打成jar包上传到集群上用spark on yarn的形式  出现的异常

Caused by: java.io.IOException: Added a key not lexically larger than previous.
Current cell = 0|000024379500|10_000024379500|10_00118486_020160126083616/f:AGE/1520991994837/Put/vlen=2/seqid=0,
      lastCell = 3|000529786000|10_000529786000|10_01988604_20161024151804/f:WARD_NAME/1520991994837/Put/vlen=3/seqid=0


上面两种情况在local模式下不会出现问题成功跑完流程 HFile载入HBase

171

主题

33

听众

36

收听

高级会员

Rank: 4

积分
3967

最佳新人活跃会员热心会员

发表于 2018-3-14 11:44:26 | 显示全部楼层
感觉都是环境的问题
第二个
Added a key not lexically larger than previous.

是因为hfile没有排序造成的。我们平常put的时候会自动排序。
欢迎加入about云群425860289432264021 ,云计算爱好者群,关注about云腾讯认证空间

32

主题

3

听众

0

收听

中级会员

Rank: 3Rank: 3

积分
661
 楼主| 发表于 2018-3-14 11:51:43 | 显示全部楼层
langke93 发表于 2018-3-14 11:44
感觉都是环境的问题
第二个
Added a key not lexically larger than previous.

问题是不知道环境问题出在哪。。。put有写过,但是感觉速度慢啊。。如果排序有问题,为啥在local模式的没出现该异常。

32

主题

3

听众

0

收听

中级会员

Rank: 3Rank: 3

积分
661
 楼主| 发表于 2018-3-14 11:54:29 | 显示全部楼层
langke93 发表于 2018-3-14 11:44
感觉都是环境的问题
第二个
Added a key not lexically larger than previous.

有没有可能scala版本跟spark版本冲突。。

171

主题

33

听众

36

收听

高级会员

Rank: 4

积分
3967

最佳新人活跃会员热心会员

发表于 2018-3-14 12:05:16 | 显示全部楼层
remarkzhao 发表于 2018-3-14 11:54
有没有可能scala版本跟spark版本冲突。。

应该不会的。不过最好本地,与集群环境保持一致
欢迎加入about云群425860289432264021 ,云计算爱好者群,关注about云腾讯认证空间

32

主题

3

听众

0

收听

中级会员

Rank: 3Rank: 3

积分
661
 楼主| 发表于 2018-3-14 12:09:34 | 显示全部楼层
langke93 发表于 2018-3-14 12:05
应该不会的。不过最好本地,与集群环境保持一致

恩。这个没有不一样。愁人  一下子不知道问题出在哪。本地没问题 集群有问题 照理说是环境问题。但是不知道怎么排查,出现的那个排序还是业务上的,而不是能直接让人感觉是环境哪里出错

76

主题

35

听众

20

收听

高级会员

Rank: 4

积分
3163

最佳新人活跃会员热心会员

发表于 2018-3-14 13:45:42 | 显示全部楼层
remarkzhao 发表于 2018-3-14 12:09
恩。这个没有不一样。愁人  一下子不知道问题出在哪。本地没问题 集群有问题 照理说是环境问题。但是不知 ...

应该不是太难。只要比较他们之间的区别就可以了。local模式,使用的数据,是否和其它模式数据是一样的。
local模式使用的各个版本,是否和集群一致。

32

主题

3

听众

0

收听

中级会员

Rank: 3Rank: 3

积分
661
 楼主| 发表于 2018-3-14 13:46:46 | 显示全部楼层
nextuser 发表于 2018-3-14 13:45
应该不是太难。只要比较他们之间的区别就可以了。local模式,使用的数据,是否和其它模式数据是一样的。
...

数据一致,版本一致。

76

主题

35

听众

20

收听

高级会员

Rank: 4

积分
3163

最佳新人活跃会员热心会员

发表于 2018-3-14 14:02:48 | 显示全部楼层
remarkzhao 发表于 2018-3-14 13:46
数据一致,版本一致。

那就是配置入手。比如内存等。使用yarn-client还是yarn-cluster。这里面也有区别

32

主题

3

听众

0

收听

中级会员

Rank: 3Rank: 3

积分
661
 楼主| 发表于 2018-3-14 15:44:13 | 显示全部楼层
nextuser 发表于 2018-3-14 14:02
那就是配置入手。比如内存等。使用yarn-client还是yarn-cluster。这里面也有区别

问题就不明白了。。。为什么配置不对会出现业务逻辑上的错误。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

QQ|小黑屋|about云开发-学问论坛|社区-大数据云技术学习分享平台 ( 京ICP备12023829号

GMT+8, 2018-6-23 06:22 , Processed in 0.395214 second(s), 29 queries , Gzip On.

Powered by Discuz! X3.2 Licensed

© 2018 Comsenz Inc.Designed by u179

快速回复 返回顶部 返回列表