是否可以从下面的SQL查询中获得一对RDD
该对是((item_id,flight_id),metric1)
item_id,flight_id是group by的一部分。
SELECT
item_id,
flight_id,
SUM(metric1) AS metric1
FROM mytable
GROUP BY
item_id,
flight_id
答案 0 :(得分:1)
正如eliasah所述,您可以简单地映射RDD(在查询和rdd
之间选择map
),如下所示:
sqlContext.sql(query).map{case Row(item_id: U, flight_id: V, metric1: T) =>
((item_id, flight_id), metric1)}
T
,U
,V
是数据类型,sqlContext
是SQLContext
个实例,查询是您问题中提供的查询。< / p>