【发布时间】:2015-02-10 23:18:51
【问题描述】:
我正在尝试执行 Spark 编程指南中提供的示例。 https://spark.apache.org/docs/1.1.0/sql-programming-guide.html
但我面临编译错误。 (我是 Scala 新手)
下面是我的代码:
import org.apache.spark.{SparkContext,SparkConf}
import org.apache.spark.sql._
import org.apache.spark.sql
object Temp {
def main(args: Array[String]) {
val sparkConf = new SparkConf().setMaster("local").setAppName("SPARK SQL example")
val sc= new SparkContext(sparkConf)
val sqlContext = new org.apache.spark.sql.SQLContext(sc)
import sqlContext.createSchemaRDD
case class Person(name: String, age: Int)
val people = sc.textFile("examples/src/main/resources/people.txt").map(_.split(",")).map(p => Person(p(0), p(1).trim.toInt))
people.registerTempTable("people")
val teenagers = sqlContext.sql("SELECT name FROM people WHERE age >= 13 AND age <= 19")
teenagers.map(t => "Name: " + t(0)).collect().foreach(println)
}
}
我在people.registerTempTable("people") 行遇到编译错误No TypeTag available for Person。
如何解决这个错误?
【问题讨论】:
-
在这里回答 apache-spark-user-list.1001560.n3.nabble.com/… 您需要将案例类定义移到 main 之外,因此它不是内部类。
-
谢谢...这解决了问题..
标签: scala apache-spark apache-spark-sql