草庐IT

java - Map/Reduce wall-time 对 Reduce 任务的数量不敏感

我用Java编写了一个简单的Map/Reduce程序,用于两个文本文件的关系连接操作。该算法在许多地方都有描述,即在Reduce任务中进行连接。我想调整它以获得更好的性能。第一件事是尝试不同数量的Reduce任务。目前我只在一台4核的计算机上运行,​​但实际上在分布式文件系统中。我遇到了一个奇怪的现象,如果我运行4个或32个reduce任务,wall-time(时间统计到时间完成)比我只运行1个reduce任务的时间还要长一点:1reducer:22.4seconds4reducer:23.3seconds32reducer:26.1seconds从这个趋势来看,我真的无法解释。第一印

hadoop - Spark 1.6.2 & yarn : diagnostics: Application failed 2 times due to AM Container for exited with exitCode: -1

我有一个由2台机器组成的集群,我正在尝试使用YARN集群管理器提交一个spark作业。基于hadoop2.6.2构建的vanillaSpark1.6.2普通Hadoop2.7.2我可以使用独立的集群管理器成功运行map-reduce作业和spark作业。但是当我用YARN运行它时,我得到了一个错误。对如何让它发挥作用有什么建议吗?如何启用更详细的日志记录?错误信息绝对不清楚为什么在hadoop/logs/userlogs/applicationXXX下没有创建日志文件?反问:IMO:hadoop日志记录和诊断不是很好。这是为什么?Hadoop似乎是一个成熟的产品。下面是输出:mike@

java - 错误 : java. lang.NumberFormatException:对于输入字符串: "time"

我正在尝试编写javaMapReduce代码并不断收到错误:Error:java.lang.NumberFormatException:Forinputstring:"time"atjava.lang.NumberFormatException.forInputString(NumberFormatException.java:65)atjava.lang.Long.parseLong(Long.java:589)atjava.lang.Long.parseLong(Long.java:631)atTokenizerMapper.map(UnknownSource)atTokenize

apache - TSocket : Could not connect to server (Connection timed out [110])

关注这篇文章http://nousefor.net/55/2011/12/php/hbase-and-hive-thrift-php-client/我下载了HBase和Thriftphp客户端包并将它们放在我的ubuntu机器上的var/www/thrift/目录中,并编写了这个简单的客户端代码来打开连接并显示数据库中的表。但是服务器不断返回错误消息“连接超时[110]”。有任何想法吗..??此外,当使用$transport=newTSocket('localhost',10001);在服务器(AmazonEC2)上运行时代码执行良好open();}catch(Exception$ex

hadoop - HDFS 连接操作 : Does it lead to increased seek time?

我试图了解HDFS如何实现concat操作并深入到以下部分code.在我看来,从这个实现来看,concat只是对目标文件的inode进行元操作,实际block没有移动。我在想这是否会导致碎片化+增加寻道时间,因为不同的block会位于磁盘上的不同位置(考虑磁盘)。这个假设是否正确?如果是,我们可以避免这种情况吗? 最佳答案 经过几次实验,我找到了自己问题的答案。在非常频繁的文件连接操作(每分钟约1k)之后,数据节点开始提示一天左右的block太多,这让我相信这确实会导致碎片化和磁盘上block数量的增加。我使用的解决方案是编写一个单

linux -/usr/bin/time 使用 SPARK 时针对 TOP 的 CPU 利用率

我使用Spark中的MLIB库对大小为8G和700万行的数据运行了SVM算法。我在单个节点上以独立模式运行Spark。我使用/usr/bin/time-v来捕获有关作业的数据。我得到了峰值内存利用率和%CPU时间等等。我得到的CPU使用率百分比仅为6%。我在程序运行的同时监视TOP一段时间,我可以看到超过100%几乎始终如一地被使用。我现在很困惑,为什么/usr/bin/time只显示了6%?更多细节-我的机器是16G,我运行的程序消耗了13.88G。程序执行时间为2.1小时。任何见解,任何人? 最佳答案 我发现了问题。因此,usr

performance - "time spent by map task"在 Hadoop 上包括什么?

Hadoop作业成功后,会显示各种计数器的摘要,请参见下面的示例。我的问题是Totaltimespentbyallmaptasks计数器中包含什么,特别是在映射器作业不是节点本地的情况下,是否包含数据复制时间?17/01/2509:06:12INFOmapreduce.Job:Counters:49FileSystemCountersFILE:Numberofbytesread=2941FILE:Numberofbyteswritten=241959FILE:Numberofreadoperations=0FILE:Numberoflargereadoperations=0FILE:N

unix - 配置单元 time_stamp 转换为 UTC 与 time_offset in UTC

我有2列:time_stamp和time_offset。两者都是STRING数据类型。我们如何借助UTC中的第二列将一列值转换为UTC?他们是将time_stamp列转换为UTC的任何配置单元还是来自unix的解决方案?hive>selecttime_stampfromtable1limit2;OK20170717-22:31:57.34820170719-21:10:15.393[yyyymmdd-hh:mm:ss.msc]thiscolumnisinlocaltimehive>selecttime_offsetfromtable1limit2;OK-05:00+05:00[‘+hh

docker - 重试连接到服务器 : Already tried 9 time(s); retry policy is RetryUpToMaximumCountWithFixedSleep(maxRetries=10, sleepTime=1000 毫秒)

我有三个物理节点。在每个节点中,我使用此命令进入docker。dockerrun-v/home/user/.ssh:/root/.ssh--privileged-p5050:5050-p5051:5051-p5052:5052-p2181:2181-p8089:8081-p6123:6123-p8084:8080-p50090:50090-p50070:50070-p9000:9000-p2888:2888-p3888:3888-p4041:4040-p8020:8020-p8485:8485-p7078:7077-p52222:22-eWEAVE_CIDR=10.32.0.3/12-

hadoop - Hadoop 中的小文件 vs Shuffle Time - Tunning

在处理如此多的小文件时,减少和调整随机播放时间的更好方法是什么?由于其他一些限制和要求,我无法减少小文件的数量,我知道处理小文件的问题。但我想知道这里还有哪些其他选项可以减少给定MapReduce作业的洗牌时间?对于单个MapReduce作业,我得到如下内容:AverageMapTime33secAverageReduceTime10secAverageShuffleTime1hrs,10mins,18secAverageMergeTime2sec我想知道是否有任何其他方法可以尝试减少此随机播放时间?对于上述数据,我的mapper#是:14778 最佳答案