草庐IT

hadoop - 如何避免 Hadoop 中的 Map/Reduce 任务失败

我有一个迭代次数太多的循环和一个在Reducer函数中计算量很大的函数。while(context.getCounter(SOLUTION_FLAG.SOLUTION_FOUND).getValue()MAX_ITR是迭代次数-用户输入问题是当我在Hadoop集群上运行它时出现超时错误并且Reducer任务被终止17/05/0621:09:43INFOmapreduce.Job:TaskId:attempt_1494129392154_0001_r_000000_0,Status:FAILEDAttemptID:attempt_1494129392154_0001_r_000000_0

apache-spark - 在用压缩文件替换 HDFS 中的小文件时如何避免破坏事件的 Hive/Presto 查询?

我们有100多个HDFS分区,我们每天每小时都会写入这些分区。分区是每天进行的,以便直接加载到Hive中,数据以Parquet格式写入。我们遇到的问题是,因为我们想尽可能快地获取数据可查询,每小时写入导致很多小文件。有很多例子,例如Howtocombinesmallparquetfilestoonelargeparquetfile?对于合并代码;我的问题是在移动/替换新压缩的文件以替换小文件时如何避免破坏人们的主动查询? 最佳答案 Metastore对每个分区都有一个文件系统位置。该位置通常基于表和分区:hdfs://namenod

java - 如何在 Java 内存密集型应用程序中避免 OutOfMemory 异常?

我们开发了一个java应用程序,其主要目标是读取文件(输入文件)、处理它并将其转换为一组输出文件。(我已经对我们的解决方案进行了一般性描述,以避免不相关的细节)。当输入文件为4GB,内存设置为-Xms4096m-Xmx16384m,32GBRAM时,此程序运行良好现在我们需要使用大小为130GB的输入文件运行我们的应用程序。我们使用具有250GBRAM且内存设置为-Xms40g-Xmx200g(也尝试了其他几种变体)的linux机器来运行应用程序并遇到OutOfMemory异常。在我们项目的这个阶段,很难考虑重新设计代码以适应hadoop(或其他大型数据处理框架),而且我们目前可以承受

r - 避免在运行时在 HDP 上修改 mapred.child.env,以便 R 可以使用 RHive 建立与 hiveserver2 的连接

我正在尝试让R的RHive包与hiveserver2很好地通信。我在尝试使用以下方式连接到hiveserver2时收到错误消息:>rhive.connect(host="localhost",port=10000,hiveServer2=TRUE,user="root",password="hadoop")初始运行的输出:SLF4J:ClasspathcontainsmultipleSLF4Jbindings.SLF4J:Foundbindingin[jar:file:/usr/hdp/2.2.0.0-2041/hadoop/client/slf4j-log4j12-1.7.5.jar

hadoop - 我如何避免 Hive 表的第一个 "NULL"中的 "Field Name"

首先,我使用以下命令在Hive中创建了表“emp”:createtableemp(idINT,nameSTRING,addressSTRING)ROWFORMATDELIMITEDFIELDSTERMINATEDBY'\t';然后通过以下命令将数据加载到这个“emp”表中:LOADDATALOCALINPATH'\home\cloudera\Desktop\emp.txt'覆盖到表emp;当我从“emp”表中选择数据时:它显示了表Null的第一个字段像这样: 最佳答案 您的文件中有一个标题行,第一个值id无法转换为INT,因此被替换

hadoop - 避免 "The number of tasks for this job 100325 exceeds the configured limit"错误

我有一个每周在生产集群上运行的Pig脚本。在上次运行中我得到了以下错误org.apache.pig.backend.executionengine.ExecException:ERROR6017:Jobfailed!Error-Jobinitializationfailed:java.io.IOException:Thenumberoftasksforthisjob100325exceedstheconfiguredlimit100000atorg.apache.hadoop.mapred.JobInProgress.initTasks(JobInProgress.java:719)a

hadoop - 如何编写查询以避免在选择不同和大小的 collect_set 配置单元查询中使用单个 reducer?

如何重写这些查询以避免在reduce阶段使用单个reducer?它需要永远,我失去了使用它的并行性的好处。selectid,count(distinctlocations)ASunique_locationsfrommytable;和selectid,size(collect_set(locations))ASunique_locationsfrommytable; 最佳答案 使用两个查询对count(distinctvar)有效:SELECTcount(1)FROM(SELECTDISTINCTlocationsasunique_

hadoop - 使用kite-dataset导入数据时如何避免IO错误?

我在Ubuntu14上使用HortonworksHDP发行版(2.4)下载的风筝数据集运行这个命令:./kite-dataset-vcsv-import--delimiter'|'ml-100k/u.itemmovies出现此错误:WARNING:Use"yarnjar"tolaunchYARNapplications.SLF4J:ClasspathcontainsmultipleSLF4Jbindings.SLF4J:Foundbindingin[jar:file:/usr/hdp/2.4.2.0-258/hadoop/lib/slf4j-log4j12-1.7.10.jar!/or

尽量避免删改List

作者简介:大家好,我是smart哥,前中兴通讯、美团架构师,现某互联网公司CTO联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc源码解析阶段4、深入jdk其余源码解析阶段5、深入jvm源码解析尽管在之前介绍了如何避免并发修改异常,但那篇文章的目的,更多的是为了介绍底层原理及应付面试,实际开发中并不推荐大家对原List做增删改操作。我的观点是,对于一个初始化完毕的List,尽量把它当做只读的,不要贸然做增删改操作。比如Java8的Stream,它所有的操作都是基

hadoop - 如何在配置单元中编写自连接查询以避免自定义重复

我需要通过从具有模式项、值的表中匹配的值来获取项对。我可以通过自连接来实现它,但我得到了如下所示的重复值ItemValue---------------item1value1item2value1item3value3item4value2当我使用distinct进行self连接时,我得到的值如下Item1Item2Value------------------------item1item2value1item2item1value1但对我来说,上面的行是重复的,只需要其中一个。我怎样才能做到这一点?感谢您的关注和帮助。注意:由于我在此要求中对重复项有自己的定义,因此我在问题中将其称