Я получаю RDD[(String, Array[String])]
и две функции, которые предназначены для поиска названий фильмов, заданных для фильма.как отформатировать вывод на печать в искрике
def find_name1(n : String, m: Map[String,String]) = {
print(n+":")
println(m.get(n).mkString)
}
def find_name2(n:Array[String], m: Map[String,String]) = {
print("here is what we recommend:")
for(i<-0 until n.length)
{
print(n(i)+":"+m.get(n(i)).mkString+",")
}
println()
}
Тогда я печатающая работу таким образом
data.foreach{x=>find_name1(x._1,m.toMap)
find_name2(x._2,m.toMap)}
результат должен быть четыре парка, но первым выглядит проводным. Это:
1375:1694:Apostle, The (1997)
Star Trek III: The Search for Spock (1984)
here is what we recommend:here is what we recommend:1373:Star Trek V: The Final Frontier (1989),1372:Star Trek VI: The Undiscovered Country (1991),994:Big Night (1996),329:Star Trek: Generations (1994),1810:Primary Colors (1998),2641:Superman II (1980),1120:People vs. Larry Flynt, The (1996),1371:Star Trek: The Motion Picture (1979),281:Nobody's Fool (1994),1635:Ice Storm, The (1997),
Почему первые два идентификатора не печатаются как формат: ID: Имя. Похоже, что работа с печатью не выполняется по строкам в RDD: данные. Есть ли кто-нибудь, кто может сказать мне, почему это происходит? Как я могу форматировать вывод так, как хочу.
Если вы запускаете это несколько раз, вы получаете тот же результат каждый раз? – maasg
@maasg да, я получаю одинаковый результат каждый раз. –