spark ジョブを実行すると、次のエラーが発生します。
py4j.protocol.Py4JError: An error occurred while calling o191.splits. Trace:
py4j.Py4JException: Method splits([]) does not exist
at py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:318)
at py4j.reflection.ReflectionEngine.getMethod(ReflectionEngine.java:326)
at py4j.Gateway.invoke(Gateway.java:272)
at py4j.commands.AbstractCommand.invokeMethod(AbstractCommand.java:132)
at py4j.commands.CallCommand.execute(CallCommand.java:79)
at py4j.GatewayConnection.run(GatewayConnection.java:214)
at java.lang.Thread.run(Thread.java:748)
これは私のコードです:
points = df.rdd.map(lambda x: ( (x['col1'], x['col2'], x['col3']), x[i + '_func']))
points.cache()
dim = points.first()[1].size
print points._jrdd.splits().size()
最後の行は、上記の例外をスローします。このエラーを解決するにはどうすればよいですか? このコードは、Spark 1.6 でうまく機能しました。現在、Spark 2.2 を使用していますが、このエラーが発生します。Python のバージョンは 2.7.12 (以前と同じ) です。