0
私はrddを取り、それをavroファイルとして保存するメソッドを書いています。問題は、私が行うことができるよりも特定のタイプを使用すると.toDF()
ですが、.toDF()
を汎用rddに呼び出すことはできません!ここでは一例です:私は、一般的なRDDに.toDF()
を呼び出し、その周りにどのような方法があるかどうかできない理由汎用rddをデータフレームに変換する方法は?
case class Person(name: String)
def f(x: RDD[Person]) = x.toDF()
def g[T](x: RDD[T]) = x.toDF()
f(p) //works
g(p) //fails!!
誰でも知っていますか?
'.toDf'を関数' g() 'を書く必要があるのは難しいですか? –
RDDをどうやって始めましたか? DataFrame(またはSpark2のDataSet)を取得する代替手段はありません –
@ cricket_007 'f'と' g'は私が書いている実際の関数ではありません。チェックポイントなどの追加機能をRDDでラップする関数を作成して、データが既に生成されている場合はロードできます。それ以外の場合はDAGをトリガーしてデータセットを生成し、ディスクに保存します。 Dataframeに保存できるフォーマットはいくつかありますが、RDDには 'saveAsTextFile'と' saveAsObject'(オブジェクトの意味)があります。 – anthonybell