0
我计算所有事件的总字节大小:斯卡拉:减少{_ + _}返回负值,因为值过高
val totalSize = sparkContext.map{ case (_, record) => getEventFromRecord(record).toByteArray.size}.reduce{_+_}
并将其写入这样一个文件:
val outputWriter = new PrintWriter(fs.create(path))
outputWriter.println("Total size: "+ totalSize)
但由于尺寸太大,我得到的是负值。我需要将其转换为Long。我想下面的变化,但不知道这是否是正确的:
val totalSize = sparkContext.map{ case (_, record) => getEventFromRecord(record).toByteArray.size.toLong}.reduce{_+_}.toLong
看起来很对我(除了最后一个'.toLong',你不需要那个)......什么让你不确定? – Dima
我同意@Dima –