我來自斯卡拉,但我確實相信在java中有類似的方法。
一種可能的方案對子級是下列:
val query =spark.sql("select url,sourceip,destinationip from traffic_data").as[GroupClass]
查閱查詢值的類型爲Dataset[GroupClass]
,因此調用collectAsList()
方法retruns一個列表[group類]
val list = query.collectAsList();
另一種解決方案(我想你必須使用streams
做同樣的事情在java)是map
每個從列表中GroupClass
這樣的:
val query =spark.sql("select url,sourceip,destinationip from traffic_data")
val list = query.collectAsList();
val mappedList = list.map {
case Row(url: String,sourceip: String,destinationip: String) =>
GroupClass(url, sourceip, destinationip)
}
我認爲所有的屬性(URL,SOURCEIP,destinationip)具有String
你必須創建GroupedClass
:
GroupClass(url: String,sourceip: String,destinationip: String)
希望它可以幫助
的可能的複製[如何在Java中投泛型列表類型?(https://stackoverflow.com/questions/905964/how-to-cast-generic -list-types-in-java) –