2017-07-14 6 views
0

私は巨大なデータセットに675GBの寄せ木細工の圧縮ファイルを持っているので、10GBのようなサイズの4,5テーブルに加わらなければならない。私はそれぞれが128GBのRAMを持っている500 +ノードのクラスタを持っていますが、私はexecutor atmost 28 GBしか実行できません。そうでなければ、糸はメモリを割り当てません。 このシナリオをどのように解決するべきかアドバイスしてください。 現在、私はpyspark 1.6を実行しています。ノード当たり26GbのRAMを1つしか実行していません。 しかし、ハイブで全部の結合を実行していると時間がかかりますが完了します。このパラメータは、パーティション(したがって、タスクの数をcontrollsデフォルト200である、spark.sql.shuffle.partitionsを高めるようにしてくださいどのように私はこれで私のeffecientlyクラスタとproccesを使用する必要がありますスパークに参加スパークコンテナはヤーンで殺される

おかげ sPradeep

答えて

1

)シャッフルをしているとき(例えば、ジョイン中、groupBy中など)。 5000の値を試して、動作するかどうか確認してください。

+0

私は4000で試しましたが、もう一度失敗しました。私が正しい場合、spark.sql.shuffle.partitionsシャッフル後に4000パーティションに変換するシャッフルrddを作成します。 –

関連する問題