hadoop相关内容

如何在代码中找到 hadoop 工作的工作 ID?

我有一个 Hadoop 程序,它有一个循环.在循环的每次迭代中,都会创建一个作业.如何在代码中找到工作 ID? 解决方案 当你提交你的 Job 实例时,你可以使用 getJobID 方法获取关于 job id 的信息: 配置 config = new Configuration();工作工作 = 新工作(配置);//配置你的工作工作.提交();//此时您的作业已提交但尚未完成,应该有您的 ..
发布时间:2022-01-13 23:56:25 其他开发

如何在映射器或减速器中运行外部程序,将 HDFS 文件作为输入并将输出文件存储在 HDFS 中?

我有一个外部程序,它将文件作为输入并给出输出文件 //例如输入文件:IN_FILE输出文件:OUT_FILE//运行外部程序./vx ${OUT_FILE} 我想要 HDFS 中的输入和输出文件 我有 8 个节点的集群.我有 8 个输入文件,每个文件有 1 行 //1 输入文件:1.txt1:0,0,0//2输入文件:2.txt2:0,0,128//3 输入文件:3.txt3:0,12 ..
发布时间:2022-01-13 23:56:18 其他开发

Hadoop 框架中使用的属性的完整列表

我正在对 Hadoop 框架进行一些研究.我想问一下框架中可以使用的属性..例如 io.sort.mb io.sort.record.percent 等 是否有任何参考可以让我了解这个框架的整个属性列表?非常希望有人可以帮助我. 另外,我想问一下,io.sort.mb 和 mapreduce.task.io.sort.mb 有什么区别吗?或者他们是一样的? 解决方案 以下 ..
发布时间:2022-01-13 23:55:56 Java开发

Hadoop 和 Python:禁用排序

我已经意识到,当使用 Python 代码运行 Hadoop 时,映射器或化简器(不确定是哪个)在 reducer.py 打印输出之前对我的输出进行排序.目前它似乎是按字母数字排序的.我想知道是否有办法完全禁用它.我想根据 ma​​pper.py 的打印顺序输出程序.我在 Java 中找到了答案,但在 Python 中没有找到答案.我需要修改 ma​​pper.py 还是命令行参数? 解决方案 ..
发布时间:2022-01-13 23:55:22 Python

如何通过 API 访问 Hadoop 计数器值?

在 Hadoop 中,我们可以在 map/reduce 任务中增加计数器,如下所示: ...context.getCounter(MyCountersEnum.SomeCounter).increment(1);... 你可以在日志中找到它们的值. 作业完成后如何从代码中访问它们? 什么是读取计数器值的 Hadoop API? 解决方案 我刚刚找到了答案 这里. 您需 ..
发布时间:2022-01-13 23:54:56 Java开发

如何在映射器(或减速器)中中止 MR 作业

我尝试在 map 方法中抛出 IOExceptions,但 MR 作业没有停止.在抛出大量 IOException 后,该作业将停止.有没有办法通过抛出异常或一些简单的调用来停止整个工作?谢谢. 解决方案 这不是 Hadoop 的理想用例,也不是一个好的实践,但您可以直接从代码内部杀死您的工作.因此,当您达到希望停止工作的条件时,记录必要的并终止您的工作. 这可以使用旧的 mapre ..
发布时间:2022-01-13 23:53:58 其他开发

在 MapReduce Job 配置中设置参数

有什么方法可以从 Mapper 设置作业配置中的参数,并且可以从 Reducer 访问. 我试过下面的代码 在映射器中:map(..) : context.getConfiguration().set("Sum","100");在 reducer 中: reduce(..) : context.getConfiguration().get("Sum"); 但在 reducer 中 ..
发布时间:2022-01-13 23:53:43 其他开发

mapred-site.xml 中的 mapreduce.framework.name 的经典本地有什么区别?

这个参数的官方说明如下: 用于执行 MapReduce 作业的运行时框架.可以是本地、经典或纱线之一. 我知道 'yarn' 的值适用于 MRv2,它会将 mapreduce 作业提交给资源管理器.但是本地和经典之间有什么区别?哪个对应MRv1? 非常感谢! 解决方案 你说得对,“yarn"代表MRv2.“经典"适用于 MRv1,“本地"适用于 MR 作业的本地运行.但为什么需要 ..
发布时间:2022-01-13 23:52:58 其他开发

Hadoop 作业失败,资源管理器无法识别 AttemptID

我正在尝试在 Oozie 工作流程中聚合一些数据.但是聚合步骤失败了. 我在日志中发现了两个兴趣点:第一个是似乎反复出现的错误(?): 容器完成后,它会被杀死,但会以非零退出代码 143 退出. 结束: 2015-05-04 15:35:12,013 INFO [49697 上的 IPC 服务器处理程序 7] org.apache.hadoop.mapred.TaskAttem ..
发布时间:2022-01-13 23:52:41 其他开发

解析数百万个小型 XML 文件

我有 1000 万个小 XML 文件(300KB-500KB).我在 Mapreduce 中使用 Mahaout 的 XML 输入格式来读取数据,并且我正在使用 SAX Parser 进行解析.但是处理速度很慢.使用输入文件的压缩(lzo)是否有助于提高性能?每个文件夹包含 80-90k xml 文件,当我启动该过程时,它会为每个文件运行映射器.有什么方法可以减少映射器的数量? 解决方案 ..
发布时间:2022-01-13 23:52:25 其他开发

map-reduce 是否可以有多个输出文件?

在我的输入文件中,我有一列作为国家/地区.现在,我的任务是将特定国家的记录放入以该国家命名的单独文件中.这可以在 Map-reduce 中做到吗?!请分享您对此的想法. 解决方案 是的,在 hadoop 中你可以使用 MultipleOutputFormat 使用它的 generateFileNameForKeyValue 方法. 使用您的国家名称作为键和记录作为值,这应该完全符合您 ..
发布时间:2022-01-13 23:52:02 其他开发