作者:mobiledu2502894115 | 来源:互联网 | 2022-11-28 17:09
我有一个ETL工作,占用大量CPU和内存,并且运行了很长时间。我在调试时观察到的第一件事如下(来自资源管理器GUI上的作业)
Num Node本地容器(满意)= 6
Num Rack本地容器(满意)= 00
Num Off开关容器(满意)= 11367
我们只有两个机架。我需要回答以下三个问题的帮助
Num Off开关容器是什么意思?
如何识别这些“关闭开关”容器以及它们运行在哪个节点上?
关闭开关容器是否会导致作业处理时间变慢?
Taha Naqvi..
5
1。Num Off开关容器是什么意思?
上述情况是off switch locality
由Delay Scheduler引起的:
| router|
+-----------+
/ \
+-----------+ +-----------+
|rack switch| |rack switch|
+-----------+ +-----------+
| data node | | data node |
+-----------+ +-----------+
| data node | | data node |
+-----------+ +-----------+
这是通过延迟调度程序进行的数据局部性(1.Node local 2. Rack local 3. off交换机)的最坏情况,并且内存和vcore已通过交换机分配在不同的机架上,并且带宽更高。
延迟调度程序将传入任务分配给位于不同机架上的关闭交换机节点,以避免任务匮乏
对于YARN中不同的调度程序,配置变量存在节点和机架阈值:
容量SCH:-使用此属性yarn.scheduler.capacity.rack-locality-additional-delay
,完成了非本地交换容器分配的本地性。
Capacity-scheduler.xml
yarn.scheduler.capacity.node-locality-delay
-1
Number of missed scheduling opportunities after which the CapacityScheduler attempts to schedule rack-local containers.
Typically this should be set to number of racks in the cluster, this
feature is disabled by default, set to -1.
https://issues.apache.org/jira/browse/YARN-4189-JIRA进行改进如果集群使用Fair调度程序,则:
https://hadoop.apache.org/docs/r2.7.4/hadoop-yarn/hadoop-yarn-site/FairScheduler.html
yarn.scheduler.fair.locality.threshold.rack
https://cs.stanford.edu/~matei/papers/2010/eurosys_delay_scheduling.pdf用于延迟计划。
2.如何识别这些“关闭开关”容器以及它们在哪个节点上运行?
相信要查看应用程序的容器,我认为我们需要通过尝试ID进行特定的应用程序尝试,然后在其中找到容器及其节点。我在RM ui中找不到任何直接链接到关闭开关容器的链接
3.关闭开关容器是否会导致作业处理时间变慢?
是的,从上面我们可以得出结论,网络开销将减慢作业处理速度。
1> Taha Naqvi..:
1。Num Off开关容器是什么意思?
上述情况是off switch locality
由Delay Scheduler引起的:
| router|
+-----------+
/ \
+-----------+ +-----------+
|rack switch| |rack switch|
+-----------+ +-----------+
| data node | | data node |
+-----------+ +-----------+
| data node | | data node |
+-----------+ +-----------+
这是通过延迟调度程序进行的数据局部性(1.Node local 2. Rack local 3. off交换机)的最坏情况,并且内存和vcore已通过交换机分配在不同的机架上,并且带宽更高。
延迟调度程序将传入任务分配给位于不同机架上的关闭交换机节点,以避免任务匮乏
对于YARN中不同的调度程序,配置变量存在节点和机架阈值:
容量SCH:-使用此属性yarn.scheduler.capacity.rack-locality-additional-delay
,完成了非本地交换容器分配的本地性。
Capacity-scheduler.xml
yarn.scheduler.capacity.node-locality-delay
-1
Number of missed scheduling opportunities after which the CapacityScheduler attempts to schedule rack-local containers.
Typically this should be set to number of racks in the cluster, this
feature is disabled by default, set to -1.
https://issues.apache.org/jira/browse/YARN-4189-JIRA进行改进如果集群使用Fair调度程序,则:
https://hadoop.apache.org/docs/r2.7.4/hadoop-yarn/hadoop-yarn-site/FairScheduler.html
yarn.scheduler.fair.locality.threshold.rack
https://cs.stanford.edu/~matei/papers/2010/eurosys_delay_scheduling.pdf用于延迟计划。
2.如何识别这些“关闭开关”容器以及它们在哪个节点上运行?
相信要查看应用程序的容器,我认为我们需要通过尝试ID进行特定的应用程序尝试,然后在其中找到容器及其节点。我在RM ui中找不到任何直接链接到关闭开关容器的链接
3.关闭开关容器是否会导致作业处理时间变慢?
是的,从上面我们可以得出结论,网络开销将减慢作业处理速度。