Dear all,
I have a question about the usage of RDD.
I implemented a class called AppDataPoint, it looks like:
case class AppDataPoint(input_y : Double, input_x : Array[Double]) extends
Serializable {
var y : Double = input_y
var x : Array[Double] = input_x
......
}
Furthermore, I created the RDD by the following function.
def parsePoint(line: String): AppDataPoint = {
/* Some related works for parsing */
......
}
Assume the RDD called "points":
val lines = sc.textFile(inputPath, numPartition)
var points = lines.map(parsePoint _).cache()
The question is that, I tried to modify the value of this RDD, the
operation is:
points.foreach(p=>p.y = another_value)
The operation is workable.
There doesn't have any warning or error message showed by the system and
the results are right.
I wonder that if the modification for RDD is a correct and in fact workable
design.
The usage web said that the RDD is immutable, is there any suggestion?
Thanks a lot.
Chieh-Yen Lin