나는 기사 수업이 있습니다
case class Article(articleName:String,
id:Option[Long],
authors: Iterator[Author],
keywords: Iterator[String])
(Author는 4 가지 문자열 옵션을 보유한 클래스입니다.)
그것으로 그래프를 만들고 싶습니다. 정점의 RDD와 가장자리의 RDD를 만들었습니다.
val vertices: RDD[(VertexId, Article)] = articles.map(article => (article.id.get , article))
그래프를 만들 때 :
val graph = Graph(vertices, edges)
다음과 같은 오류가 발생합니다 (단축 됨).
java.io.NotSerializableException: scala.collection.LinearSeqLike$$anon$1
at java.io.ObjectOutputStream.writeObject0(ObjectOutputStream.java:1184)
at java.io.ObjectOutputStream.defaultWriteFields(ObjectOutputStream.java:1548)
at java.io.ObjectOutputStream.writeSerialData(ObjectOutputStream.java:1509)
내가하는 일을 할 수없는 이유를 잘 모르겠습니다.
클래스는 직렬화 할 수 없기 때문에 직렬화 LinearSeqLike
할 수 없습니다. Spark 클러스터 노드에서 실행되는 작업은이를 위해 직렬화되어야합니다. 대신 .NET Framework를 사용 List
하거나 다른 구체적이고 직렬화 가능한 시퀀스 유형을 사용하는 것이 좋습니다 Iterator
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다