2014-10-29 33 views
5

Tôi đang cố tạo một RDD của các đối tượng lớp vỏ. . Ví dụ,lỗi spark RDD không tìm thấy khi tạo 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") 

tôi đang cố gắng để hoàn thành phần từ ví dụ trước bằng cách cho

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") 

tôi nhận được lỗi sau:

<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)) 

Bất kỳ ý tưởng về những gì đã xảy ra? Cảm ơn bạn trước!

Trả lời

21

Vấn đề ở đây là chú thích loại RDD[String] rõ ràng. Có vẻ như RDD không được nhập theo mặc định trong spark-shell, đó là lý do tại sao Scala phàn nàn rằng nó không thể tìm thấy loại RDD. Trước tiên hãy thử chạy import org.apache.spark.rdd.RDD.

+0

Cảm ơn rất nhiều, Josh. – user1189851

Các vấn đề liên quan