我正在使用以下命令运行存储在 AWS EMR 集群(1 个主节点和 2 个从属节点,每个具有 8GB RAM 和 4 个内核)上的主节点上的 pyspark 代码 -
spark-submit --master yarn --deploy-mode cluster --jars /home/hadoop/mysql-connector-java-5.1.45/mysql-connector-java-5.1.45-bin.jar --driver-class-path /home/hadoop/mysql-connector-java-5.1.45/mysql-connector-java-5.1.45.jar --conf spark.executor.extraClassPath=/home/hadoop/mysql-connector-java-5.1.45/mysql-connector-java-5.1.45.jar --driver-memory 2g --executor-cores 3 --num-executors 3 --executor-memory 5g mysql_spark.py
我注意到两件事:
- 我通过 SSH 连接到从属节点,我注意到其中一个从属节点根本没有被使用(为此使用了 htop)。附上截图。这就是它的样子。我的
spark-submit
命令有问题吗? 2个从节点截图
- 在提交申请之前,主节点的 8GB 内存中的 6.54GB 已经在使用中(再次使用了 htop)。没有其他应用程序正在运行。为什么会这样?