2016-06-06 2 views
1

여기에서 Spark 예제를 따르고 있습니다. http://spark.apache.org/docs/latest/sql-programming-guide.html.registerTempTable을 찾을 수 없음

val people = sc.textFile("../spark-training/simple-app/examples/src/main/resources/people.txt").map(_.split(",")).map(p => Person(p(0), p(1).trim.toInt)) 
people.registerTempTable("people") 

나는 registerTempTable가 인식되지 않는 오류가 발생합니다.

import org.apache.spark.{SparkConf, SparkContext} 

val conf = new SparkConf().setAppName("Select people") 
val sc = new SparkContext(conf) 
val sqlContext = new org.apache.spark.sql.SQLContext(sc) 
import sqlContext._ 

그리고 build.sbt : 나는 무엇을 놓치고

name := "exercises" 

version := "1.0" 

scalaVersion := "2.11.8" 

libraryDependencies += "org.apache.spark" % "spark-core_2.10" % "1.0.0" 

libraryDependencies += "org.apache.spark" % "spark-sql_2.10" % "1.6.1" 

일부 Github의 프로젝트를보고 한 후, 내가 필요한 수입을 가지고 나에게 보인다?

+0

공유 한 빌드 파일에 다른 문제가 있습니다. 그것은 스파크 코어 1.0과 1.6.1을 사용합니다. – eliasah

답변

2

코드에서 사람들은 RDD입니다. registerTempTable은 RDD API가 아닌 데이터 프레임 API입니다. 코드는 예제의 끝에서`toDF() '비트를 삭제합니다. 첫 번째 줄은 다음과 같아야합니다.

val people = sc.textFile("examples/src/main/resources/people.txt").map(_.split(",")).map(p => Person(p(0), p(1).trim.toInt)).toDF()