




已阅读5页,还剩22页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
注:红色字体表示可优化参数!core-site.xml是全局配置,hdfs-site.xml和mapred-site.xml分别是hdfs和mapred的局部配置。所有参数配置:core-default.html文件中1、hadoop.tmp.dir 默认值:/tmp/hadoop-$临时目录设定。尽量手动配置这个选项,否则的话都默认存在了系统的默认临时文件/tmp里。并且手动配置的时候,如果服务器是多磁盘的,每个磁盘都设置一个临时文件目录,这样便于mapreduce或者hdfs等使用的时候提高磁盘IO效率。 hadoop.tmp.dir是hadoop文件系统依赖的基础配置,很多路径都依赖它。它默认的位置是在/tmp/$user下面,但是在/tmp路径下的存储是不安全的,因为linux一次重启,文件就可能被删除。怎么更改默认的hadoop.tmp.dir路径,并使其生效?1、编辑conf/core-site.xml,在里面加上如下属性:print?1 2 hadoop.tmp.dir 3 /home/had/hadoop/data 4 A base for other temporary directories. 5 hadoop.tmp.dir/home/zj/tmp目录不会被清空就可以了。2、 Hadoop.native.lib默认值:true使用本地hadoop库标识。3、 Hadoop.http.filter.initializershttp服务器过滤链设置。4、 Hadoop.security.group.mapping默认值:org.apache.hadoop.security.ShellBasedUnixGroupsMapping组内用户的列表的类设定。5、 Hadoop.security.authorization默认值:false服务端认证开启。6、 Hadoop.security.authentication默认值:simple 无认证或认证设置。7、hadoop.security.token.service.use_ip默认值:true是否开启使用IP地址作为连接的开关。8、hadoop.logfile.size默认值:10000000日志文件最大为10M。9、hadoop.logfile.count默认值:10日志文件数量为10个。10、 io.file.buffer.size默认值:4096流文件的缓冲区为4K。SequenceFiles在读写中可以使用的缓存大小,流文件的缓冲区默认值为4K。这个参数在新版本里变为了:file.stream-buffer-size,单位bytes 。 作为hadoop缓冲区,用于hadoop读hdfs的文件和写hdfs的文件,还有map的输出都用到了这个缓冲区容量,对于现在的硬件很保守,可以设置为128k(131072),甚至是1M(太大了map和reduce任务可能会内存溢出)。通过增大它的大小能够减少I/O次数以提高性能。如果系统允许,64KB(65536字节)至128KB(131072字节)是较普遍的选择。io.file.buffer.size131072(部署注意:namenode磁盘: sas带RAID,多磁盘存储文件系统元信息.datanode配置: 不带RAID, 双网卡: 一个用于内部数据传输,一个用于外部数据传输.hadoop各节点的分布:namenode和jobtracker部署:namenode与jobtracker分离.tasktracker与datanode配对.Trash: hadoop回收站功能默认是禁止的,删除文件,就是直接删除了,所以要记得配置好trash。trash功能还是不错的,当rm后,它会move到当前文件夹下的.Trash目录下,误删文件后,可以到对应的.Trash目录下恢复文件,参考配置属性erval。备份:namendoe的元数据切记做好多处备份,包括热备和冷备,否则元数据一丢,整个集群的数据都无法恢复了。热备:namenode的元数据配置写两份,一分写本地,另一份写远程nfs。冷备:定时拷贝namenode的元数据到远程的nfs,保留十天甚至更长。Datanode的数据目录:如果datanode对应的机器上有多块磁盘,例如/disk1-/disk3,dfs.data.dir可以配置为”/disk1/data,/disk2/data,/disk3/data”,datanode会在写数据时,以轮询的方式选择一个目录写入数据,一般这些目录是不同的块设备,不存在的目录会被忽略掉,参考配置属性dfs.data.dir.datanode如果有多个磁盘不建议做raid,因为做raid会有性能损失,还会导致一个磁盘坏了,整个硬盘也不能用了,而hadoop可以规避这个问题。Tasktracker的中间输出目录: MapReduce产生的中间数据会特别多,为了减少磁盘压力,如果机器有多个磁盘,也可以像datanode的数据目录设为”/disk1/local,/disk2/local,/disk3/local”,参考配置属性mapred.local.dir。map和reduce任务的JVM选项:mapred.child.java.opts配置map和reduce子进程的JVM属性,如果内存充裕,可以改为 -Xmx2400m.Tasktracker的map和reducer数量配置: 属性mapred.tasktracker.map.tasks.maximum配置这个tasktracker同时可以最多跑多少个map task,要根据tracker的内存和磁盘情况规划。还有属性mapred.tasktracker.reduce.tasks.maximum配置这个tasktracker同时可以最多跑多少个reduce task.同理也是要根据tracker的内存和磁盘情况规划。缓冲区大小:io.file.buffer.size默认是4KB,作为hadoop缓冲区,用于hadoop读hdfs的文件和写hdfs的文件,还有map的输出都用到了这个缓冲区容量,对于现在的硬件很保守,可以设置为128k(131072),甚至是1M(太大了map和reduce任务可能会内存溢出)。noatime的设置:为了充分发挥性能,需要使用noatime选项挂载磁盘,表示执行读操作时,不更新文件的访问时间,可以显著提供性能。)11、io.bytes.per.checksum默认值:512校验位数为512字节。12、io.skip.checksum.errors默认值:false校验出错后是抛出异常还是略过标识。True则略过。13、pression.codecs默认值:press.DefaultCodec,press.GzipCodec,press.BZip2Codec,press.SnappyCodec压缩和解压的方式设置。14、io.serializations默认值:org.apache.hadoop.io.serializer.WritableSerialization序例化和反序列化的类设定。15、默认值:file:/缺省的文件URI标识设定。16、erval默认值:0文件废弃标识设定,0为禁止此功能。这个是开启hdfs文件删除自动转移到垃圾箱的选项,值为垃圾箱文件清除时间。一般开启这个会比较好,以防错误删除重要文件。单位是分钟。删除文件,就是直接删除了,所以要记得配置好trash。trash功能:当rm后,它会move到当前文件夹下的.Trash目录下,误删文件后,可以到对应的.Trash目录下恢复文件。一般设置为1440,即一天。erval144017、fs.file.impl默认值:org.apache.hadoop.fs.LocalFileSystem本地文件操作类设置。18、fs.hdfs.impl默认值:org.apache.hadoop.hdfs.DistributedFileSystemHDFS文件操作类设置。19、fs.s3.impl默认值:org.apache.hadoop.fs.s3.S3S3文件操作类设置。20、fs.s3n.impl默认值:org.apache.hadoop.fs.s3native.NativeS3FileSystemS3文件本地操作类设置。21、fs.kfs.impl默认值:org.apache.hadoop.fs.kfs.KosmosFileSystemKFS文件操作类设置。22、fs.hftp.impl默认值:org.apache.hadoop.hdfs.HftpFileSystemHTTP方式操作文件设置。23、fs.hsftp.impl默认值:org.apache.hadoop.hdfs.HsftpFileSystemHTTPS方式操作文件设置。24、fs.webhdfs.impl默认值:org.apache.hadoop.hdfs.web.WebHdfsFileSystemWEB方式操作文件类设置。25、fs.ftp.impl默认值:org.apache.hadoop.fs.ftp.FTPFileSystemFTP文件操作类设置。26、fs.ramfs.impl默认值:org.apache.hadoop.fs.InMemoryFileSystem内存文件操作类设置。27、fs.har.impl默认值:org.apache.hadoop.fs.HarFileSystem压缩文件操作类设置。28、fs.har.impl.disable.cache默认值:true是否缓存har文件的标识设定。29、fs.checkpoint.dir默认值:$hadoop.tmp.dir/dfs/namesecondary备份名称节点的存放目录设置。尽secondary NameNode的元数据以,号隔开,hdfs会把元数据冗余复制到这些目录,一般这些目录是不同的块设备,不存在的目录会被忽略掉30、 Fs.checkpoint.edits.dir默认值:$fs.checkpoint.dir备份名称节点日志文件的存放目录设置,secondary NameNode的事务文件存储的目录,以,号隔开,hdfs会把事务文件冗余复制到这些目录。31、fs.checkpoint.period默认值:3600动态检查的间隔时间设置,默认为1小时。32、fs.checkpoint.size默认值:67108864日志文件大小为64M。33、fs.s3.block.size默认值:67108864写S3文件系统的块的大小为64M。34、fs.s3.buffer.dir默认值:$hadoop.tmp.dir/s3S3文件数据的本地存放目录。35、fs.s3.maxRetries默认值:4S3文件数据的偿试读写次数。36、fs.s3.sleepTimeSeconds默认值:10S3文件偿试的间隔。37、 Local.cache.size默认值;10737418240缓存大小设置为10GB.38、press.blocksize默认值:1000000压缩流式文件中的最小块数为100万。39、io.seqfile.lazydecompress默认值:true块是否需要压缩标识设定。40、io.seqfile.sorter.recordlimit默认值:1000000内存中排序记录块类最小为100万。41、io.mapfile.bloom.size默认值:1048576BloomMapFiler过滤量为1M。42、io.mapfile.bloom.error.rate默认值:0.005误报的速度在BloomFilter-s BloomMapFile中使用。当这个值减少,BloomFilter-s的规模呈指数增长。这个值是遇到误报(默认值是0.5%)的概率。43、 Hadoop.util.hash.type默认值:murmur缺少hash方法为murmur。44、ipc.client.idlethreshold默认值:4000连接数据最小阀值为4000。45、ipc.client.kill.max默认值:10一个客户端连接数最大值为10。46、ipc.client.connection.maxidletime默认值:10000断开与服务器连接的时间最大为10秒.47、ipc.client.connect.max.retries默认值:10建立与服务器连接的重试次数为10次48、ipc.server.listen.queue.size默认值:128接收客户连接的监听队例的长度为128。49、ipc.server.tcpnodelay默认值:false开启或关闭服务器端TCP连接算法。50、ipc.client.tcpnodelay默认值:false开启或关闭客户端TCP连接算法。51、webinterface.private.actions默认值:falseWeb交互的行为设定。52、hadoop.rpc.socket.factory.class.default默认值:.StandardSocketFactory缺省的socket工厂类设置。53、hadoop.rpc.socket.factory.class.ClientProtocol与dfs连接时的缺省socket工厂类。54、hadoop.socks.server服务端的工厂类缺省设置为SocksSocketFactory.55、topology.node.switch.mapping.impl默认值:.ScriptBasedMapping56、默认值:57、topology.script.number.args默认值:100参数数量最多为100。58、hadoop.security.uid.cache.secs默认值:1440059、fs.inmemory.size.mb 默认值:reduce 阶段用户合并 map 输出所需的内存文件系统分配更多的内存。reduce阶段用户合并map输出的内存限制。一般设为200 ,可根据自身硬件设备进行更改测试。fs.inmemory200hdfs-default.html1、node.logging.level默认值:info输出日志类型。2、dfs.secondary.http.address默认值::50090备份名称节点的http协议访问地址与端口。3、dfs.datanode.address默认值::50010数据节点的TCP管理服务地址和端口。4、dfs.datanode.http.address默认值::50010数据节点的HTTP协议访问地址和端口。5、dfs.datanode.ipc.address默认值::50020数据节点的IPC服务访问地址和端口。6、dfs.datanode.handler.count默认值:3数据节点的服务连接处理线程数。7、dfs.http.address默认值::50070名称节点的http协议访问地址与端口。8、dfs.https.enable默认值:false支持https访问方式标识。9、dfs.https.need.client.auth默认值:false客户端指定https访问标识。10、dfs.https.server.keystore.resource默认值:ssl-server.xmlSsl密钥服务端的配置文件。11、dfs.https.client.keystore.resource默认值:ssl-client.xmlSsl密钥客户端的配置文件。12、dfs.datanode.https.address默认值::50475数据节点的HTTPS协议访问地址和端口。13、dfs.https.address默认值::50470名称节点的HTTPS协议访问地址和端口。14、erface默认值:default数据节点采用IP地址标识。15、server默认值:default指定DNS的IP地址。16、dfs.replication.considerLoad默认值:true加载目标或不加载的标识。17、dfs.default.chunk.view.size默认值:32768浏览时的文件块大小设置为32K。18、dfs.datanode.du.reserved默认值:0每个卷预留的空闲空间数量。19、.dir默认值:$hadoop.tmp.dir/dfs/name存贮在本地的名字节点数据镜象的目录,作为名字节点的冗余备份。20、.edits.dir默认值:$.dir存贮文件操作过程信息的存贮目录。21、dfs.web.ugi默认值:webuser,webgroupWeb接口访问的用户名和组的帐户设定。22、dfs.permissions默认值:true文件操作时的权限检查标识。23、dfs.permissions.supergroup默认值:supergroup超级用户的组名定义。24、dfs.block.access.token.enable默认值:false数据节点访问令牌标识。25、erval默认值:600升级访问钥时的间隔时间。26、dfs.block.access.token.lifetime默认值:600访问令牌的有效时间。27、dfs.data.dir 默认值:$hadoop.tmp.dir/dfs/data数据节点的块本地存放目录。28、dfs.datanode.data.dir.perm默认值:755数据节点的存贮块的目录访问权限设置。29、dfs.replication默认值:3缺省的块复制数量。30、dfs.replication.max默认值:512块复制的最大数量。31、dfs.replication.min默认值:1块复制的最小数量。32、dfs.block.size默认值:67108864缺省的文件块大小为64M。hdfs里一个文件块的大小,默认64M,通常设置134217728,即128M,太大的话会有较少map同时计算,太小的话也浪费可用map个数资源,而且文件太小namenode就浪费内存多。根据需要进行设置。erval默认值:60000磁盘空间统计间隔为6秒。34、dfs.client.block.write.retries默认值:3块写入出错时的重试次数。35、ervalMsec默认值:3600000块的报告间隔时为1小时。36、dfs.blockreport.initialDelay默认值:0块顺序报告的间隔时间。37、erval默认值:3数据节点的心跳检测间隔时间,单位为秒。38、node.handler.count默认值:10名称节点的连接处理的线程数量。若改为数值,同样可以尝试该值大小对效率的影响变化进行最合适的值的设定。39、dfs.safemode.threshold.pct默认值:0.999f启动安全模式的阀值设定。40、 Dfs.safemode.extension默认值:30000当阀值达到量值后扩展的时限。41、dfs.balance.bandwidthPerSec默认值:1048576启动负载均衡的数据节点可利用带宽最大值为1M。42、dfs.hosts默认值:可与名称节点连接的主机地址文件指定。43、dfs.hosts.exclude默认值:删除与名称节点连接的主机地址文件设定。44、dfs.max.objects默认值:0文件数、目录数、块数的最大数量。45、erval默认值:30名称节点解除命令执行时的监测时间周期。46、erval默认值:5名称节点解除命令执行是否完检测次数。47、erval默认值:3名称节点计算数据节点的复制工作的周期数。48、dfs.access.time.precision默认值:3600000充许访问文件的时间精确到1小时。49、dfs.support.append默认值:false是否充许链接文件指定。50、node.delegation.key.update-interval默认值:86400000名称节点上的代理令牌的主key的更新间隔时间为24小时。51、 node.delegation.token.max-lifetime默认值:604800000代理令牌的有效时间最大值为7天。52、node.delegation.token.renew-interval默认值:86400000代理令牌的更新时间为24小时53、dfs.datanode.failed.volumes.tolerated默认值:0决定停止数据节点提供服务充许卷的出错次数。0次则任何卷出错都要停止数据节点。mapred-default.html1、Hadoop.job.history.location默认值:作业跟踪管理器的静态历史文件的存放目录。2、hadoop.job.history.user.location默认值:可以指定具体某个作业的跟踪管理器的历史文件存放目录。3、pleted.location默认值:已完成作业的历史文件的存放目录。4、io.sort.factor默认值:10排完序的文件的合并时的打开文件句柄数。int类型,Map端和Reduce端使用该属性设置在Map端和Reduce端都使用到的对文件Sort时一次合并的最大流,其默认值是10,即一次合并10个流。在集群中,将其适当增大能够提高并行度以缩短合并所需时间。有利于减少合并次数,进而减少map对磁盘的读写频率,有可能达到优化作业的目的。io.sort.factor1005、io.sort.mb默认值:100排序文件的内存缓存大小。int类型,Map端使用该属性设置对Map输出进行排序时使用的环形内存缓冲区的大小,以M字节为单位,默认是100M。如果允许,应该增加它的值来减少磁盘溢写的次数以提高性能。io.sort.mb2006、io.sort.record.percent默认值:0.05排序线程阻塞的内存缓存剩余比率。该属性设置指io.sort.mb中用来存储Map输出的记录边界的百分比,其他剩余的缓存空间用来存储Map输出记录本身。io.sort.record.percent0.057、io.sort.spill.percent默认值:0.80当缓冲占用量为该值时,线程需要将内容先备份到磁盘中。即Map开始做spill(溢写)操作的阈值(buffer size * spill percent = 100MB * 0.8 = 80MB)。内容缓冲区默认大小为100M时,溢写线程启动,锁定这80MB的内存,执行溢写过程。Map task的输出结果还可以往剩下的20MB内存中写,互不影响。如果你确认map输出的数据基本有序,排序时间很短,可以将这个阈值适当调高,更理想的,如果你的map输出是有序的数据,那么可以把buffer设的更大,阈值设置为1。io.sort.spill.percent0.808、io.map.index.skip默认值:0索引条目的间隔设定。9、mapred.job.tracker默认值:local作业跟踪管理器是否和MR任务在一个进程中。10、mapred.job.tracker.http.address默认值::50030作业跟踪管理器的HTTP服务器访问端口和地址。11、 mapred.job.tracker.handler.count默认值:10作业跟踪管理器的管理线程数,线程数比例是任务管理跟踪器数量的0.04。较大集群的话,可调大些,比如64。mapred.job.tracker.handler.count1012、mapred.task.tracker.report.address默认值::0任务管理跟踪器的主机地址和端口地址。13、mapred.local.dir默认值:$hadoop.tmp.dir/mapred/localMR的中介数据文件存放目录。14、mapred.system.dir默认值:$hadoop.tmp.dir/mapred/systemMR的控制文件存放目录。15、mapreduce.jobtracker.staging.root.dir默认值:$hadoop.tmp.dir/mapred/staging每个正在运行作业文件的存放区。16、mapred.temp.dir默认值:$hadoop.tmp.dir/mapred/tempMR临时共享文件存放区。17、mapred.local.dir.minspacestart默认值:0MR本地中介文件删除时,不充许有任务执行的数量值。18、mapred.local.dir.minspacekill默认值:0MR本地中介文件删除时,除非所有任务都已完成的数量值。19、erval默认值:600000任务管理跟踪器不发送心跳的累计时间间隔超过600秒,则任务管理跟踪器失效。20、mapred.tasktracker.resourcecalculatorplugin默认值:指定的一个用户访问资源信息的类实例。21、mapred.tasktracker.taskmemorymanager.monitoring-interval默认值:5000监控任务管理跟踪器任务内存使用率的时间间隔。22、mapred.tasktracker.tasks.sleeptime-before-sigkill默认值:5000发出进程终止后,间隔5秒后发出进程消亡信号。23、mapred.map.tasks默认值:2每个作业缺省的map任务数为2。24、mapred.reduce.tasks默认值:1每个作业缺省的reduce任务数为1。25、mapreduce.tasktracker.outofband.heartbeat默认值:false让在任务结束后发出一个额外的心跳信号。26、mapreduce.tasktracker.outofband.heartbeat.damper默认值:1000000当额外心跳信号发出量太多时,则适当阻止。27、mapred.jobtracker.restart.recover默认值:false充许任务管理器恢复时采用的方式。28、mapred.jobtracker.job.history.block.size默认值:3145728作业历史文件块的大小为3M。29、mapreduce.job.split.metainfo.maxsize默认值:10000000分隔元信息文件的最大值是10M以下。30、mapred.jobtracker.taskScheduler默认值:org.apache.hadoop.mapred.JobQueueTaskScheduler设定任务的执行计划实现类。31、mapred.jobtracker.taskScheduler.maxRunningTasksPerJob默认值:作业同时运行的任务数的最大值。32、mapred.map.max.attempts默认值:4Map任务的重试次数。33、mapred.reduce.max.attempts默认值:4Reduce任务的重试次数。34、mapred.reduce.parallel.copies 默认值:5在复制阶段时reduce并行传送的值。reuduce shuffle阶段并行传输数据的数量。将Map输出复制到Reduce的线程的数量。对于较大集群,根据需要可以将其增大到20-50,增加了Reduce端复制过程的并行数,提高了系统性能。mapred.reduce.parallel.copies535、mapreduce.reduce.shuffle.maxfetchfailures默认值:10取map输出的最大重试次数。36、mapreduce.reduce.shuffle.connect.timeout默认值:180000REDUCE任务连接任务管理器获得map输出时的总耗时是3分钟。37、mapreduce.reduce.shuffle.read.timeout默认值:180000REDUCE任务等待map输出数据的总耗时是3分钟。38、mapred.task.timeout默认值:600000如果任务无读无写时的时间耗时为10分钟,将被终止。39、mapred.tasktracker.map.tasks.maximum默认值:2任务管理器可同时运行map任务数为2。mapred.tasktracker.map.tasks.maximum设置为节点的cpu cores数目或者数目减1比较合适,此时的运行效率最高。mapred.tasktracker.map.tasks.maximum240、mapred.tasktracker.reduce.tasks.maximum默认值:2任管管理器可同时运行reduce任务数为2。优化值:mapred.tasktracker.map.tasks.maximum = CPU数量cpu数量 = 服务器CPU总核数 / 每个CPU的核数服务器CPU总核数 = more /proc/cpuinfo | grep processor | wc -l每个CPU的核数 = more /proc/cpuinfo | grep cpu coresmapred.tasktracker.reduce.tasks.maximum241、pleteuserjobs.maximum默认值:100当用户的完成作业数达100个后,将其放入作业历史文件中。42、mapreduce.reduce.input.limit默认值:-1Reduce输入量的限制。43、mapred.job.tracker.retiredjobs.cache.size默认值:1000作业状态为已不在执行的保留在内存中的量为100044、mapred.job.tracker.jobhistory.lru.cache.size默认值:5作业历史文件装载到内存的数量。45、mapred.child.java.opts默认值:-Xmx200m启动task管理的子进程时的内存设置。String类型,Map和Reduce任务虚拟机使用该属性设置Map和Reduce任务运行时Java虚拟机指定的内存的大小,默认-Xmx200m,分配给每个任务200MB内存。只要条件允许,应该让任务节点上的内存大小尽量大,可以将其增大到-Xmx512m,即512MB,以提高MapReduce作业的性能。mapred.child.java.opts-Xmx512m46、mapred.child.env默认值:子进程的参数设置。47、mapred.child.ulimit默认值:虚拟机所需内存的设定。48、mapred.cluster.map.memory.mb默认值:-149、mapred.cluster.reduce.memory.mb默认值:-150、mapred.cluster.max.map.memory.mb默认值:-151、mapred.cluster.max.reduce.memory.mb默认值:-152、mapred.job.map.memory.mb默认值:-153、mapred.job.reduce.memory.mb默认值:-154、mapred.child.tmp默认值:/tmpMr任务信息的存放目录。55、mapred.inmem.merge.threshold默认值:1000内存中的合并文件数设置。配置项mapred.job.shuffle.merge.percent优先判断,其次才判断mapred.inmem.merge.threshold。threshold取决于map输出数据的大小,如果map输出的数据很大,默认值1000反倒不好,应该小一些,如果map输出的数据不大(light weight),可以设置2000或者以上。 mapred.inmem.merge.threshold100056、mapred.job.shuffle.merge.percent默认值:0.66reduce归并接收map的输出数据可占用的内存配置百分比。类似mapreduce.reduce.shuffle.input.buffer.percen属性。缓存的内存中多少百分比后开始做merge(合并)操作。假设mapred.job.shuffle.input.buffer.percent为0.7,reduce task的max heapsize为1G,那么用来做下载数据缓存的内存就为大概700MB左右,这700M的内存,跟map端一样,也不是要等到全部写满才会往磁盘刷的,而是当这700M中被使用到了一定的限度(通常是一个百分比),就会开始往磁盘刷。这个限度阈值也是可以通过job参数来设定的,设定参数为:mapred.job.shuffle.merge.percent(default 0.66)。如果下载速度很快,很容易就把内存缓存撑大,那么调整一下这个参数有可能会对reduce的性能有所帮助。默认值偏小,可以设置到0.8左右; mapred.job.shuffle.merge.percent0.7057、mapred.job.shuffle.input.buffer.percent默认值:0.70用来缓存shuffle数据的reduce task heap百分比。Reduce在shuffle阶段对下载来的map数据,并不是立刻就写入磁盘的,而是会先缓存在内存中,然后当使用内存达到一定量的时候才刷入磁盘。当指定了JVM的堆内存最大值以后,上面这个配置项就是Reduce用来存放从Map节点取过来的数据所用的内存占堆内存的比例,默认是0.7,既70%,通常这个比例是够了,但是对于大数据的情况,这个比例还是小了一些,0.8-0.9之间比较合适。(前提是你的reduce函数不会疯狂的吃掉内存)。 mapred.job.shuffle.input.buffer.percent 0.80 58、mapred.job.reduce.input.buffer.percent默认值:0.0sort完成后reduce计算阶段用来缓解数据的百分比。当reduce将所有的map上对应自己partition的数据下载完成后,就会开始真正的reduce计算阶段(中间有个sort阶段通常时间非常短,几秒钟就完成了,因为整个下载阶段就已经是边下载边sort,然后边merge的)。当reduce task真正进入reduce函数的计算阶段的时候,有一个参数也是可以调整reduce的计算行为。也就是:mapred.job.reduce.input.buffer.percent(default 0.0)。由于reduce计算时肯定也是需要消耗内存的,而在读取reduce需要的数据时,同样是需要内存作为buffer,这个参数是控制需要多少的内存百分比来作为reduce读已经sort好的数据的buffer百分比。默认情况下,reduce是全部从磁盘开始读处理数据。如果这个参数大于0,那么就会有一定量的数据被缓存在内存并输送给reduce,当reduce计算逻辑消耗内存很小时,可以分一部分内存用来缓存数据,反正reduce的内存闲着也是闲着。 mapred.job.reduce.input.buffer.percent 0.0 59、mapred.map.tasks.speculative.execution默认值:trueMap任务的多实例并行运行标识。60、mapred.reduce.tasks.speculative.execution默认值:trueReduce任务的多实例并行运行标识。61、mapred.job.reuse.jvm.num.tasks默认值:1每虚拟机运行的任务数。62、mapred.min.split.size默认值:0Map的输入数据被分解的块数设置。63、mapred.jobtr
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 新型相变材料对系统能效衰减的长期影响量化评估
- 数字化协同平台如何突破多专业设计数据孤岛与版本控制瓶颈
- 探针台数据安全架构在医疗级检测中的隐私泄露防护创新
- 微通道刮面换热器传热强化机理与表面微纳结构拓扑优化方法
- 循环经济视角下办公耗材组合的共享模式与标准化瓶颈
- 循环经济框架内塑料餐刀回收体系不完善与资源浪费的协同治理难题
- 废旧制糖机械专用链的残值评估体系与模块化再制造技术融合
- 工业级分体式机箱抗震设计标准在移动边缘计算中的适应性重构
- 贵州省黔东南州2025年八年级上学期月考质量监测英语试卷附答案
- 美妆集合店门店设计与布局优化报告
- 幼儿园饮用水突发污染事故应急处理预案
- 联通技能竞赛考试题及答案(5G核心网知识部分)
- 政治-中国特色社会主义教材探究与分享参考答案高中政治统编版必修一
- 恶性贫血的动物模型构建和研究
- “余香萦绕”-2024年中考语文作文押题分析+学生习作+素材积累+金句积累
- 2024年秋新北师大版一年级上册数学教学课件 我上学啦 第5课时 收获的季节
- 2024年全国期货从业资格之期货投资分析考试高频题(附答案)
- 拨叉加工工艺及夹具设计毕业设计
- 护理团体标准解读-成人氧气吸入疗法护理
- DL-T475-2017接地装置特性参数测量导则
- 1音名唱名音的分组
评论
0/150
提交评论