2014-10-29 13 views
5

Ich versuche, eine RDD der Fall-Klasse-Objekte erstellen. . ZBFunke Fehler RDD-Typ nicht beim Erstellen RDD

// sqlContext from the previous example is used in this example. 
// createSchemaRDD is used to implicitly convert an RDD to a SchemaRDD. 
import sqlContext.createSchemaRDD 

val people: RDD[Person] = ... // An RDD of case class objects, from the previous example. 

// The RDD is implicitly converted to a SchemaRDD by createSchemaRDD, allowing it to be stored using  Parquet. 
people.saveAsParquetFile("people.parquet") 

Ich versuche, das Teil aus dem vorherigen Beispiel zu vervollständigen, indem

geben
case class Person(name: String, age: Int) 

    // Create an RDD of Person objects and register it as a table. 
    val people: RDD[Person] = sc.textFile("/user/root/people.txt").map(_.split(",")).map(p => Person(p(0), p(1).trim.toInt)) 
    people.registerAsTable("people") 

ich die folgende Fehlermeldung erhalten:

<console>:28: error: not found: type RDD 
     val people: RDD[Person] =sc.textFile("/user/root/people.txt").map(_.split(",")).map(p => Person(p(0), p(1).trim.toInt)) 

Jede Idee, was schief gelaufen ist? Vielen Dank im Voraus!

Antwort

21

Das Problem hier ist die explizite RDD[String] Typ Annotation. Es sieht so aus, als ob RDD nicht standardmäßig in spark-shell importiert wird, weshalb sich Scala beschwert, dass es den Typ RDD nicht finden kann. Versuchen Sie zuerst, import org.apache.spark.rdd.RDD auszuführen.

+0

Vielen Dank, Josh. – user1189851