Perfect Balanceサンプラを実行中にクライアント・ノードでJavaの「out of heap space」または「GC overhead limit exceeded」エラーが発生した場合には、そのジョブのクライアントJVMのヒープ・サイズを増やしてください。
Java JVMの-Xmx
オプションを使用します。HADOOP_CLIENT_OPTS
変数を設定すれば、Hadoopジョブを実行する前にクライアントJVMのオプションを指定できます。
$ export HADOOP_CLIENT_OPTS="-Xmx1024M $HADOOP_CLIENT_OPTS"
HADOOP_CLIENT_OPTS
を設定しても、変更されるのはクライアント・ノード上のJVMオプションのみです。マップおよびリデュース・タスクでのJVMオプションは変更されません。この変数の設定例は、invindx
スクリプトを参照してください。
oracle.hadoop.balancer.runMode
がlocal
とdistributed
のどちらに設定されているかに関係なく、サンプラのヒープ・サイズを増やすにはHADOOP_CLIENT_OPTS
を設定するだけで十分です。runMode=local
の場合、サンプラはクライアント・ノードで実行され、HADOOP_CLIENT_OPTS
はクライアント・ノード上でヒープ・サイズを設定します。runMode=distributed
の場合、Perfect Balanceは、HADOOP_CLIENT_OPTS
で指定した-Xmx
設定に基づいてサンプラHadoopジョブのヒープ・サイズを自動的に設定します。Perfect Balanceは、マップのヒープ・サイズを変更することはなく、サンプラ・ジョブの場合のみジョブのタスクを削減します。