私は Spark の初心者で、アプリケーションを実行してテキスト フィールドから 14KB のデータを読み取り、いくつかの変換とアクション (collect、collectAsMap) を実行し、データをデータベースに保存しています。
8 つの論理コアを備えた 16G メモリを搭載した Macbook でローカルに実行しています。
Java 最大ヒープは 12G に設定されています。
アプリケーションを実行するために使用するコマンドは次のとおりです。
bin/spark-submit --class com.myapp.application --master local[*] --executor-memory 2G --driver-memory 4G /jars/application.jar
次の警告が表示されます
2017-01-13 16:57:31.579 [Executor task launch worker-8hread] 警告 org.apache.spark.storage.MemoryStore - メモリに rdd_57_0 をキャッシュするのに十分なスペースがありません! (これまでに計算された 26.4 MB)
ここで何がうまくいかないのか、どうすればパフォーマンスを向上させることができるのか、誰でも教えてもらえますか? また、 suffle-spill を最適化する方法は? これは、私のローカル システムで発生したスピルのビューです。