Ich habe Datensatz wie 10, "Name", 2016, "Country" 11, "Name1", 2016, "country1" 10, "Name", 2016, "Country" 10, "Name", 2016, "Country" 12, "Name2", 2017, "country2"Funken Finden Sie doppelten Datensätze für ein Feld in RDD
Mein Problem Aussage ist, ich habe Gesamtzählung zu finden und Duplikate von Jahr zählen. Mein Ergebnis sollte sein (Jahr, Gesamtzahlen, Duplikate) 2016,4,3 2017,1,0.
Ich habe versucht, dieses Problem durch
bis zu 10 GB Datenval records = rdd.map {
x =>
val array = x.split(",")
(array(2),x)
}.groupByKey()
val duplicates = records.map {
x => val totalcount = x._2.size
val duplicates = // find duplicates in iterator
(x._1,totalcount,duplicates)
}
Es läuft gut zu lösen. Wenn ich es mit mehr Daten ausführe, dauert es lange. Ich fand, dass groupByKey nicht der beste Ansatz ist.
Bitte schlagen Sie den besten Ansatz vor, um dieses Problem zu lösen.