У меня есть файл с именем tags(UserId,MovieId,Tag)
в качестве входных данных для алгоритма и преобразование его в таблицу с помощью registerTempTable.
val orderedId = sqlContext.sql("SELECT MovieId AS Id,Tag FROM tag ORDER BY MovieId")
этот запрос дает мне файл состоит из Id, тег в качестве ввода для второго шага
val eachTagCount =orderedId.groupBy(" Id,Tag").count()
но появляется ошибка
case class DataClass( MovieId:Int,UserId: Int, Tag: String)
// Create an RDD of DataClass objects and register it as a table.
val Data = sc.textFile("file:///usr/local/spark/dataset/tagupdate").map(_.split(",")).map(p => DataClass(p(0).trim.toInt, p(1).trim.toInt, p(2).trim)).toDF()
Data.registerTempTable("tag")
val orderedId = sqlContext.sql("SELECT MovieId AS Id,Tag FROM tag ORDER BY MovieId")
orderedId.rdd
.map(_.toSeq.map(_+"").reduce(_+","+_))
.saveAsTextFile("/usr/local/spark/dataset/algorithm3/output")
val eachTagCount =orderedId.groupBy(" Id,Tag").count()
eachTagCount.rdd
.map(_.toSeq.map(_+"").reduce(_+","+_))
.saveAsTextFile("/usr/local/spark/dataset/algorithm3/output2")
Исключение:
Caused by: org.apache.spark.sql.AnalysisException: Cannot resolve column name " Id,Tag" among (Id, Tag);
at org.apache.spark.sql.DataFrame$$anonfun$resolve$1.apply(DataFrame.scala:152)
at org.apache.spark.sql.DataFrame$$anonfun$resolve$1.apply(DataFrame.scala:152)
at scala.Option.getOrElse(Option.scala:121)
как решить эту ошибку?