Hi, everyone.
I'm using scala to implement a connected component algorithm in Spark. And the
question codes are as follows:
1 type Graph = ListBuffer[Array[String]]
2 type CCS = ListBuffer[Graph]
3 val ccs_array:Array[CCS] = graphs_rdd.map{ graph =>
find_cc(graph)}.collect()
4 var ccs_1 = ccs_array(0)
5 print_ccs(ccs_1)
6 ccs_1(0) += Array("1", "100")
7 print_ccs(ccs_1)
It seems that line 6 did not change ccs_1's data. line 5 and line 7 shows the
same result.
And I tried this: if initialize ccs_array with ordinary data, ccs_1 can be
successfully changed.
Is that mean the data returned by collect() can not be changed with the code
like line 6?
How should I change my codes?
Thanks.
Qiang Yang