0
我是新来的火花,我有一张桌子里面有100个cr的数据。 表模式是:转型变慢而群体中火花
ID INT
名VARCHAR
DEPT_ID INT
工资双
我手术做组,做工资的总和特别是团体。
对于我有下面的代码写:
val empData = sqlContext.sql("Select id ,name, dept_id , salary from emp")
val empData_map = empData.map(row => {
Row(row.getInt(0), row.getString(1), row.getInt(2), row.getDouble(3))
})
val finalResult = empData_map.map({ final_data =>
((final_data.getInt(0), final_data.getString(1), final_data.getInt(2)), final_data.getDouble(3))
}).reduceByKey((x, y) =>((x._1 + y._1)))
但我的问题是,但性能是通过使用这种缓慢。任何人都可以建议我,Wheather我正在使用正确的转换技术或不。
对于此类转换,您是否有其他选项(快速)?
注意:语法可能是错误的。
由于提前
不知道为什么你把东西放进'Row'再出一次。另外,我会推荐数据集。 – Reactormonk
@Reactormonk所以你能帮我解决问题,我怎样才能使用数据集进行这种类型的转换。 – Darshan
哪个Spark版本? – Reactormonk