spark count () 统计数据条数为什么每次运行结果都不同?

问答 水墨之风 ⋅ 于 2018-08-25 11:05:02 ⋅ 最后回复由 水墨之风 2018-09-17 17:56:27 ⋅ 7320 阅读

使用count统计条数时每次都不一样,而且与真实数据条数对不上,感觉有数据丢失,不知道为什么?

val spa1=MongoSpark.load(ss, ReadConfig(Map("collection" -> “”), Some(ReadConfig(ss))))
val spa2=spa1.select("hyid", "phone", "name", "regtime", "userSour", "amount_tb", "usAmount")
.map{ x =>
val sdf = new SimpleDateFormat("yyyy-MM-dd")
val ts = sdf.parse(x.getString(3)).getTime
val ts2 = new java.sql.Timestamp(ts)
var usersource = ""
if (!x.isNullAt(4)) {
usersource = x.getString(4)
}
(x.getInt(0), x.getString(1), x.getString(2), ts2, usersource, x.getDouble(5), x.getDouble(6))
}
//打印的结果每次都不一样
println(spa1.count(),spa2.count())
成为第一个点赞的人吧 :bowtie:
回复数量: 2
  • 青牛 国内首批大数据从业者,就职于金山,担任大数据团队核心研发工程师
    2018-09-17 17:46:31

    数据库里的数据能贴出来吗

  • 水墨之风 勤奋好学,乐观开朗
    2018-09-17 17:56:27

    @青牛 其实就是任意几十万mongodb里的数据,用sql方式过滤后统计数量会不准确eg:df.filter("hyid >0").count(),转换成RDD再过滤就好了!

暂无评论~~
  • 请注意单词拼写,以及中英文排版,参考此页
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`, 更多语法请见这里 Markdown 语法
  • 支持表情,可用Emoji的自动补全, 在输入的时候只需要 ":" 就可以自动提示了 :metal: :point_right: 表情列表 :star: :sparkles:
  • 上传图片, 支持拖拽和剪切板黏贴上传, 格式限制 - jpg, png, gif,教程
  • 发布框支持本地存储功能,会在内容变更时保存,「提交」按钮点击时清空
Ctrl+Enter