• mapredsite.xml 基本配置参考 北漂


    说明:这是hadoop2.x版本的参数。下面的value都是参数默认值。

    常用配置:

    ♥♥♥
    
    1.mapreduce.job.hdfs-servers
    
    value:${fs.defaultFS}   
    
    说明:job客户端参数。
    
    2.mapreduce.task.io.sort.factor
    
    value:10
    
    说明:在Reduce Task阶段,排序文件时一次合并的流的数量。 这决定了打开文件句柄的数量。也即是一次合并的文件数据,每次合并的时候选择最小的前10进行合并。
    
    3.mapreduce.task.io.sort.mb
    
    value:100
    
    说明:排序文件时使用的缓冲区内存总量,以兆字节为单位。 默认情况下,为每个合并流提供1MB,这应该最小化搜索。
    
    4.mapreduce.map.sort.spill.percent
    
    value:0.8
    
    说明:Map阶段溢写文件的阈值(排序缓冲区大小的百分比)。
    
    5.mapreduce.jobtracker.address
    
    value:local
    
    说明:MapReduce作业跟踪器运行的主机和端口。 如果是“本地”,则作业将作为单个映射在进程中运行并减少任务。
    
    6.mapreduce.job.maps
    
    value:2
    
    说明:单个任务的map数量。
    
    7.mapreduce.job.reduces
    
    value:1
    
    说明:单个任务的reduce数量。
    
     8.mapreduce.job.running.map.limit
    
    value:0
    
    说明:单个任务并发的最大map数,0或负数没有限制
    
    9.mapreduce.job.running.reduce.limit
    
    value:0
    
    单个任务并发的最大reduce数,0或负数没有限制
    
    10.mapreduce.job.max.map
    
    value:-1
    
    说明:单个任务允许的最大map数,-1表示没有限制。
    
    11.mapreduce.job.max.split.locations
    
    value:10
    
    说明:分片数量
    
    12.mapreduce.job.split.metainfo.maxsize
    
    value:10000000
    
    说明:split的元数据信息数量,如果value为-1,则没有限制
    
    13.mapreduce.map.maxattempts
    
    value:4
    
    说明:每个 Map Task 最大重试次数,一旦重试参数超过该值,则认为 Map Task 运行失败。
    
    14.mapreduce.reduce.maxattempts
    
    value:4
    
    说明:每个 reduce Task 最大重试次数,一旦重试参数超过该值,则认为 reduce Task 运行失败。
    
    15.mapreduce.reduce.shuffle.parallelcopies
    
    value:5
    
    说明:Reduce Task启动的并发拷贝数据的线程数目
    
     16.mapreduce.task.timeout
    
    value:600000
    
    说明:如果任务既不读取输入,也不写入输出,也不更新其状态字符串,则任务终止之前的毫秒数。0表示禁用超时。
    
    17.mapreduce.map.memory.mb
    
    value:1024
    
    说明:每个Map Task需要的内存量
    
    18.mapreduce.map.cpu.vcores
    
    value:1
    
    说明:每个Map Task需要的虚拟CPU个数
    
    19.mapreduce.reduce.memory.mb
    
    value:1024
    
    说明:每个Reduce Task需要的内存量
    
    20.mapreduce.reduce.cpu.vcores
    
    value:1
    
    说明:每个Reduce Task需要的虚拟CPU个数
    
    21.mapred.child.java.opts
    
    value:-Xmx200m
    
    说明:jvm启动的子线程可以使用的最大内存。建议值-XX:-UseGCOverheadLimit -Xms512m -Xmx2048m -verbose:gc -Xloggc:/tmp/@taskid@.gc
    
    22.yarn.app.mapreduce.am.resource.mb
    
    value:1536
    
    说明:MR ApplicationMaster占用的内存量。
    
    23.yarn.app.mapreduce.am.resource.cpu-vcores
    
    value:1
    
    说明:MR ApplicationMaster占用的虚拟CPU个数。
    
    24.mapreduce.jobhistory.address
    
    value:0.0.0.0:10020
    
    说明:指定历史服务器的地址和端口
    
    25.mapreduce.jobhistory.webapp.address
    
    value:0.0.0.0:19888
    
    说明:历史服务器的web地址
    
    26.mapreduce.map.java.opts
    
    value:-Xmx1024m
    
    说明:每个map任务的jvm需要的内存量,一般为map内存的0.8
    
    27.mapreduce.reduce.java.opts
    
    value:
    
    说明:每个reduce任务jvm需要的内存量。为reduce内存量的0.8
    
    28.mapreduce.map.output.compress
    
    value:false
    
    说明: map输出是否进行压缩,如果压缩就会多耗cpu,但是减少传输时间,如果不压缩,就需要较多的传输带宽,默认是false。配合 mapreduce.map.output.compress.codec使用
    
    29.mapreduce.map.output.compress.codec
    
    value:org.apache.hadoop.io.compress.DefaultCodec
    
     
    
     
    
    不常用配置:
    
    1.mapreduce.local.clientfactory.class.name
    
    value:org.apache.hadoop.mapred.LocalClientFactory
    
    说明:这是负责创建本地作业运行客户端的客户端工厂。
    
    2.mapreduce.jobtracker.system.dir
    
    value:${hadoop.tmp.dir}/mapred/system
    
    说明:MapReduce存储控制文件的目录,可配置多块硬盘,逗号分隔。
    
    3.mapreduce.jobtracker.staging.root.dir
    
    value:${hadoop.tmp.dir}/mapred/staging
    
    说明:用来存放与每个job相关的数据
    
    4.mapreduce.cluster.temp.dir
    
    value:${hadoop.tmp.dir}/mapred/temp
    
    说明:用来存放临时文件共享的目录。
    
    5.mapreduce.job.reducer.preempt.delay.sec
    
    value:0
    
    说明:
    
    6.mapreduce.reduce.shuffle.fetch.retry.enabled
    
    value:${yarn.nodemanager.recovery.enabled}
    
    说明:设置主机重新启动期间启用提取重试。
    
    7.mapreduce.reduce.shuffle.fetch.retry.interval-ms
    
    value:1000
    
    说明:提取器重试再次获取的时间间隔。
    
    8.mapreduce.reduce.shuffle.fetch.retry.timeout-ms
    
    value:30000
    
    说明:取回超时时间
    
    9.mapreduce.reduce.shuffle.retry-delay.max.ms
    
    value:60000
    
    说明:在重试下载map数据之前,reducer将延迟的最大ms数。
    
    10.mapreduce.reduce.shuffle.connect.timeout
    
    value:180000
    
    说明:reduce task 连接map的超时时间,以毫秒为单位。
    
    11.mapreduce.reduce.shuffle.read.timeout
    
    value:180000
    
    说明:map 输出数据,reduce连接以后可用于读取的最长时间,以毫秒为单位。
    
    12.mapreduce.shuffle.listen.queue.size
    
    value:128
    
    说明:shuffle侦听队列的长度
    
    13.mapreduce.shuffle.connection-keep-alive.enable
    
    value:false
    
    说明:是否保持活跃连接,默认为false。
    
    14.mapreduce.shuffle.connection-keep-alive.timeout
    
    value:5
    
    说明:保持活跃连接的秒数。
    
    15.yarn.app.mapreduce.am.log.level
    
    value:info
    
    说明:MR ApplicationMaster的日志记录级别。 允许的级别为:OFF,FATAL,ERROR,WARN,INFO,DEBUG,TRACE和ALL。 如果设置了“mapreduce.job.log4j-properties-file”,则可以覆盖此处的设置。
    
    16.mapreduce.map.log.level
    
    value:info
    
    说明:map任务的日志记录级别。 允许的级别为:OFF,FATAL,ERROR,WARN,INFO,DEBUG,TRACE和ALL。 如果设置了“mapreduce.job.log4j-properties-file”,则可以覆盖此处的设置。
    
    17.mapreduce.reduce.log.level
    
    value:info
    
    说明:reduce任务的日志记录级别。 允许的级别为:OFF,FATAL,ERROR,WARN,INFO,DEBUG,TRACE和ALL。 如果设置了“mapreduce.job.log4j-properties-file”,则可以覆盖此处的设置。
    
    18.mapreduce.reduce.merge.inmem.threshold
    
    value:1000
    
    说明:设置了Map任务在缓存溢出前能够保留在内存中的输出个数的阈值(默认1000),只要一个满足,输出数据都将会写到磁盘。
    
    19.mapreduce.reduce.shuffle.merge.percent
    
    value:0.66
    
    说明:决定缓存溢出到磁盘的阈值(默认0.66),即占用分配给map输出总内存的百分比。
    
    20.mapreduce.reduce.shuffle.input.buffer.percent
    
    value:0.70
    
    说明:Reduce任务对多个Map任务的输出结果进行合并时,占用的缓存空间在堆栈空间中的占用比例(默认0.70)。
    
    21.mapreduce.reduce.input.buffer.percent
    
    value:0
    
    说明:reduce函数开始运行时,内存中的map输出所占的堆内存比例不得高于这个值,默认情况内存都用于reduce函数,也就是map输出都写入到磁盘
    
    22.mapreduce.reduce.shuffle.memory.limit.percent
    
    value:0.25
    
    说明:一个单一的shuffle的最大内存使用限制
    
    23.mapreduce.shuffle.ssl.enabled
    
    value:false
    
    说明:是否将SSL用于Shuffle HTTP端点。
    
    24.mapreduce.shuffle.ssl.file.buffer.size
    
    value:65536
    
    说明:使用SSL时从文件读取溢出的缓冲区大小。

    配置文件常用配置:

     <property>
             <name>mapreduce.map.memory.mb</name>
             <value>1024</value>
       </property>
    
       <property>
             <name>mapreduce.map.java.opts</name>
             <value>-Xmx819M</value>
       </property>
    
       <property>
             <name>mapreduce.reduce.memory.mb</name>
             <value>2048</value>
       </property>
    
       <property>
             <name>mapreduce.reduce.java.opts</name>
             <value>-Xmx1638M</value>
       </property>
    
       <property> 
             <name>mapreduce.task.io.sort.mb</name>
             <value>512</value>
       </property>
    
       <property>
             <name>mapreduce.task.io.sort.factor</name>
             <value>100</value>
       </property>
        <property>
        <name>mapreduce.tasktracker.http.threads</name>
    <value>100</value>
    </property>
       <property>
             <name>mapreduce.reduce.shuffle.parallelcopies</name>
             <value>100</value>
       </property>
        <property>
             <name>mapreduce.map.output.compress</name>
             <value>true</value>
       </property>
        <property>
             <name>mapreduce.map.output.compress.codec</name>
             <value>org.apache.hadoop.io.compress.DefaultCodec</value>
       </property>
       <property>
            <name>mapreduce.framework.name</name>
            <value>yarn</value>
        </property>
        <property>
            <name>mapreduce.jobtracker.address</name>
            <value>master:11211</value>
        </property>
  • 相关阅读:
    MySQL根据逗号将一行数据拆成多行数据
    pyhon实现excel的转置
    python批量加入数据库
    jieba词频统计
    python 求顾客相邻两次购买周期
    mysql求取最后两次价格上涨趋势
    mysql求每一个顾客购买商品的相邻时间间隔
    利用Python从一个数据库中查询结果插入到另一个数据库中
    电商项目数据分析
    线程的两种调用方式
  • 原文地址:https://www.cnblogs.com/yjt1993/p/9476573.html
Copyright © 2020-2023  润新知