0
DataFrame
RDD
として変換せずに行/列の値を更新しますか?Spark SQL - RDDとして変換せずにデータフレームの行/列値を更新
なぜ私たちは直接RDD
のようなDataFrameを更新できず、別のものを返します。
DataFrame
RDD
として変換せずに行/列の値を更新しますか?Spark SQL - RDDとして変換せずにデータフレームの行/列値を更新
なぜ私たちは直接RDD
のようなDataFrameを更新できず、別のものを返します。
RDDは不変であり、RDD上の「変換」は新しいRDDを生成するだけである。データフレームRDD周りとのようなラッパーが苦しむされているがexのためimmutablility 言った:
oldDF.registerTempTable("whatever")
val newDF = sqlContext.sql("select field1,field2,sum(field3) as times from whatever where substring(field1,1,4)='test' group by field1,field2 having times>100").collect().saveAsParquetFile("xxx.parquet")
おかげで、私たちは、データフレームにRDDへのデータフレームに変換し、再度RDDする必要があります。このシナリオでは、多くの変換を行っているため、パフォーマンス上の理由からDataFrameを使用する利点があります。 – Shankar
私がDataFrameを使用したい理由は、コンテンツをParquetファイルとして簡単に書き込むことです。 – Shankar
RDDに変換する必要はありません。それは「ボンネットの下に」作られた。ちょうど新しいものにDFを変換する - あまりにもあなたがデータフレーム上で動作することができ –