如何將RDD [Array [Row]]轉換爲RDD [Row]?將RDD [Array [Row]]轉換爲RDD [Row]
詳情:
我在我的解析函數返回類型數組[行]對一些數據和行一些數據的一些使用情況。我將如何將這兩個轉換爲RDD [行]以供進一步使用?
代碼示例
private def getRows(rdd: RDD[String], parser: Parser): RDD[Row] = {
var processedLines = rdd.map { line =>
map(p => parser.processBeacon(line) }
val rddOfRowsList = processedLines.map { x =>
x match {
case Right(obj) => obj.map { p =>
MyRow.getValue(p)
}//I can use flatmap here
case Left(obj) =>
MyRow.getValue(obj)
}//Cant use flatmap here
}
// Here I have to convert rddOfRowsList to RDD[Row]
//?????
val rowsRdd =?????
//
rowsRdd
}
def processLine(logMap: Map[String, String]):Either[Map[String, Object], Array[Map[String, Object]]] =
{
//process
}
您可以添加一些代碼以及一些示例輸入和想要的輸出嗎? – Shaido