您的当前位置:首页正文

任务配置(Hadoop2.2.0)

2020-11-09 来源:爱够旅游网

任务 JVM 内存设置 (AMI 3.0.0) Hadoop 2.2.0 使用两个参数配置用于 map 和 reduce 的内存:分别为 mapreduce.map.java.opts 和 mapreduce.reduce.java.opts。它们取代了早期 Hadoop 版本中的单个配置选项:mapreduce.map.java.opts。 下表显示了每实例类型

任务 JVM 内存设置 (AMI 3.0.0)

Hadoop 2.2.0 使用两个参数配置用于 map 和 reduce 的内存:分别为 mapreduce.map.java.opts 和 mapreduce.reduce.java.opts。它们取代了早期 Hadoop 版本中的单个配置选项:mapreduce.map.java.opts。

下表显示了每实例类型的这些设置的默认值。

m1.medium

配置选项 默认值
mapreduce.map.java.opts -Xmx768m
mapreduce.reduce.java.opts -Xmx768m
mapreduce.map.memory.mb 1024
mapreduce.reduce.memory.mb 1024
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 2048
yarn.nodemanager.resource.memory-mb 2048


m1.large

配置选项 默认值
mapreduce.map.java.opts -Xmx864m
mapreduce.reduce.java.opts -Xmx1536m
mapreduce.map.memory.mb 1024
mapreduce.reduce.memory.mb 2048
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 3072
yarn.nodemanager.resource.memory-mb 5120


m1.xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx512m
mapreduce.reduce.java.opts -Xmx1536m
mapreduce.map.memory.mb 768
mapreduce.reduce.memory.mb 2048
yarn.scheduler.minimum-allocation-mb 256
yarn.scheduler.maximum-allocation-mb 8 192
yarn.nodemanager.resource.memory-mb 12288


m2.xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1280m
mapreduce.reduce.java.opts -Xmx2304m
mapreduce.map.memory.mb 1536
mapreduce.reduce.memory.mb 2560
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 7168
yarn.nodemanager.resource.memory-mb 14336


m2.2xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1280m
mapreduce.reduce.java.opts -Xmx2304m
mapreduce.map.memory.mb 1536
mapreduce.reduce.memory.mb 2560
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 8 192
yarn.nodemanager.resource.memory-mb 30720


m3.xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1515m
mapreduce.reduce.java.opts -Xmx1792m
mapreduce.map.memory.mb 1904
mapreduce.reduce.memory.mb 2150
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 3788
yarn.nodemanager.resource.memory-mb 5273


m3.2xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx2129m
mapreduce.reduce.java.opts -Xmx2560m
mapreduce.map.memory.mb 2826
mapreduce.reduce.memory.mb 3072
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 5324
yarn.nodemanager.resource.memory-mb 9113


m2.4xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1280m
mapreduce.reduce.java.opts -Xmx2304m
mapreduce.map.memory.mb 1536
mapreduce.reduce.memory.mb 2560
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 8 192
yarn.nodemanager.resource.memory-mb 61440


c1.medium

配置选项 默认值
io.sort.mb 100
mapreduce.map.java.opts -Xmx288m
mapreduce.reduce.java.opts -Xmx288m
mapreduce.map.memory.mb 512
mapreduce.reduce.memory.mb 512
yarn.scheduler.minimum-allocation-mb 256
yarn.scheduler.maximum-allocation-mb 512
yarn.nodemanager.resource.memory-mb 1024


c1.xlarge

配置选项 默认值
io.sort.mb 150
mapreduce.map.java.opts -Xmx864m
mapreduce.reduce.java.opts -Xmx1536m
mapreduce.map.memory.mb 1024
mapreduce.reduce.memory.mb 2048
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 2048
yarn.nodemanager.resource.memory-mb 5120


c3.large

配置选项 默认值
mapreduce.map.java.opts -Xmx768m
mapreduce.reduce.java.opts -Xmx768m
mapreduce.map.memory.mb 921
mapreduce.reduce.memory.mb 921
yarn.scheduler.minimum-allocation-mb 499
yarn.scheduler.maximum-allocation-mb 1920
yarn.nodemanager.resource.memory-mb 1920


c3.xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1177m
mapreduce.reduce.java.opts -Xmx1356m
mapreduce.map.memory.mb 1413
mapreduce.reduce.memory.mb 1628
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 2944
yarn.nodemanager.resource.memory-mb 3302


c3.2xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1515m
mapreduce.reduce.java.opts -Xmx1792m
mapreduce.map.memory.mb 1904
mapreduce.reduce.memory.mb 2150
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 3788
yarn.nodemanager.resource.memory-mb 5273


c3.4xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx2129m
mapreduce.reduce.java.opts -Xmx2560m
mapreduce.map.memory.mb 2826
mapreduce.reduce.memory.mb 3072
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 5324
yarn.nodemanager.resource.memory-mb 9113


c3.8xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx4669m
mapreduce.reduce.java.opts -Xmx4915m
mapreduce.map.memory.mb 4669
mapreduce.reduce.memory.mb 4915
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 8396
yarn.nodemanager.resource.memory-mb 16793


cc1.4xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1280m
mapreduce.reduce.java.opts -Xmx2304m
mapreduce.map.memory.mb 1536
mapreduce.reduce.memory.mb 2560
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 5120
yarn.nodemanager.resource.memory-mb 20480


cg1.4xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1280m
mapreduce.reduce.java.opts -Xmx2304m
mapreduce.map.memory.mb 1536
mapreduce.reduce.memory.mb 2560
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 5120
yarn.nodemanager.resource.memory-mb 20480


cc2.8xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1280m
mapreduce.reduce.java.opts -Xmx2304m
mapreduce.map.memory.mb 1536
mapreduce.reduce.memory.mb 2560
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 8 192
yarn.nodemanager.resource.memory-mb 56320


cr1.8xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx10895m
mapreduce.reduce.java.opts -Xmx13516m
mapreduce.map.memory.mb 15974
mapreduce.reduce.memory.mb 16220
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 27238
yarn.nodemanager.resource.memory-mb 63897


g2.2xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx512m
mapreduce.reduce.java.opts -Xmx1536m
mapreduce.map.memory.mb 768
mapreduce.reduce.memory.mb 2048
yarn.scheduler.minimum-allocation-mb 256
yarn.scheduler.maximum-allocation-mb 8 192
yarn.nodemanager.resource.memory-mb 12288


hi1.4xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx3379m
mapreduce.reduce.java.opts -Xmx4121m
mapreduce.map.memory.mb 4700
mapreduce.reduce.memory.mb 4945
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 8448
yarn.nodemanager.resource.memory-mb 16921


hs1.8xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx1280m
mapreduce.reduce.java.opts -Xmx2304m
mapreduce.map.memory.mb 1536
mapreduce.reduce.memory.mb 2560
yarn.scheduler.minimum-allocation-mb 512
yarn.scheduler.maximum-allocation-mb 8 192
yarn.nodemanager.resource.memory-mb 56320


i2.xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx2150m
mapreduce.reduce.java.opts -Xmx2585m
mapreduce.map.memory.mb 2856
mapreduce.reduce.memory.mb 3102
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 5376
yarn.nodemanager.resource.memory-mb 9241


i2.2xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx3399m
mapreduce.reduce.java.opts -Xmx4147m
mapreduce.map.memory.mb 4730
mapreduce.reduce.memory.mb 4976
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 8499
yarn.nodemanager.resource.memory-mb 17049


i2.4xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx5898m
mapreduce.reduce.java.opts -Xmx7270m
mapreduce.map.memory.mb 8478
mapreduce.reduce.memory.mb 8724
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 14745
yarn.nodemanager.resource.memory-mb 32665


i2.8xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx10895m
mapreduce.reduce.java.opts -Xmx13516m
mapreduce.map.memory.mb 15974
mapreduce.reduce.memory.mb 16220
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 27238
yarn.nodemanager.resource.memory-mb 63897


r3.xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx2150m
mapreduce.reduce.java.opts -Xmx3102m
mapreduce.map.memory.mb 2856
mapreduce.reduce.memory.mb 3102
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 5376
yarn.nodemanager.resource.memory-mb 9241


r3.2xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx3399m
mapreduce.reduce.java.opts -Xmx4147m
mapreduce.map.memory.mb 4743
mapreduce.reduce.memory.mb 4976
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 8499
yarn.nodemanager.resource.memory-mb 17049


r3.4xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx5898m
mapreduce.reduce.java.opts -Xmx7270m
mapreduce.map.memory.mb 8478
mapreduce.reduce.memory.mb 8724
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 14745
yarn.nodemanager.resource.memory-mb 32665


r3.8xlarge

配置选项 默认值
mapreduce.map.java.opts -Xmx10895m
mapreduce.reduce.java.opts -Xmx13516m
mapreduce.map.memory.mb 15974
mapreduce.reduce.memory.mb 16220
yarn.scheduler.minimum-allocation-mb 532
yarn.scheduler.maximum-allocation-mb 27238
yarn.nodemanager.resource.memory-mb 69897


您可以在执行每项任务时启动新 JVM,实现更好的任务隔离;也可以在各项任务之间共享 JVM,降低框架开销。如果您处理的是许多小文件,合理的做法是多次重复使用 JVM,以摊销启动成本。然而,如果每项任务耗时较长或处理的数据量较大,您可以选择不重复使用 JVM,以确保释放出所有内存供后续任务使用。

使用 mapred.job.reuse.jvm.num.tasks 选项配置 JVM 重复使用设置。

使用引导操作修改 JVM

  • 在安装了 Amazon EMR CLI 的目录下,从命令行运行以下命令。有关更多信息,请参见 Amazon EMR 的命令行接口参考。

  • Linux、UNIX 和 Mac OS X 用户:

    ./elastic-mapreduce --create --alive --name "JVM infinite reuse" \
    --bootstrap-action s3://elasticmapreduce/bootstrap-actions/configure-hadoop \
    --bootstrap-name "Configuring infinite JVM reuse" \
    --args "-m,mapred.job.reuse.jvm.num.tasks=-1"
  • Windows 用户:

    ruby elastic-mapreduce --create --alive --name "JVM infinite reuse" --bootstrap-action s3://elasticmapreduce/bootstrap-actions/configure-hadoop --bootstrap-name "Configuring infinite JVM reuse" --args "-m,mapred.job.reuse.jvm.num.tasks=-1"
  • Note

    Amazon EMR 已将 mapred.job.reuse.jvm.num.tasks 的值设置为 20,但您可以通过引导操作覆盖此值。值 -1 表示在单一作业中重复使用的次数不受限制,1 表示不能重复使用任务。

    显示全文