如何使Scala类Hadoop可写?

时间:2014-05-27 00:11:24

标签: scala serialization hadoop apache-spark

我有一个Scala类:

class Features (
  val count: Int = 1,
  val firstTime: Long = Long.MaxValue,
  val lastTime: Long = Long.MinValue)

以Spark为对象保存在Spark对RDD中:

val features: org.apache.spark.rdd.RDD[(String, features.Features)]

我希望用以下内容保存内容:

features.saveAsSequenceFile(path)

然而,Features类没有实现org.apache.hadoop.io.Writable,我也不知道如何实现它。没有它,我得到的错误是:

No implicit view available from features.Features => org.apache.hadoop.io.Writable.

如何使功能Hadoop可写?

1 个答案:

答案 0 :(得分:1)

您应该在类中实现Writable接口。通常有两种方式:

  1. 在您的案例类中实现可写

  2. 实现类型类并提供隐式转换