[英]Apache Spark - Unable to understand scala example
我正在尝试了解此位置上的Scala代码。 (我来自Java背景)。
我感到在下面的部分完全迷路了
val pairs1 = sc.parallelize(0 until numMappers, numMappers).flatMap { p =>
val ranGen = new Random
var arr1 = new Array[(Int, Array[Byte])](numKVPairs)
for (i <- 0 until numKVPairs) {
val byteArr = new Array[Byte](valSize)
ranGen.nextBytes(byteArr)
arr1(i) = (ranGen.nextInt(Int.MaxValue), byteArr)
}
arr1
}.cache()
我知道并行化和平面映射的作用。 我不知道如何对arr1进行初始化。 是int类型还是其他类型的字节数组? 另外,它在循环逻辑内部做了什么。
var arr1 = new Array[(Int, Array[Byte])](numKVPairs)
只需创建一个大小为numKVPairs
且类型为(Int, Array[Byte])
数组(一对int
和字节数组)
之后, arr1
会填充随机数据。
var arr1 = new Array[(Int, Array[Byte])](numKVPairs)
创建一个成对的数组类型(Int,Array [Byte])。 那是对的第一个元素是Int类型,第二个元素是Array [Byte]。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.