hadoop相关内容
我们有想要与 HDFS 集成的特定算法.该算法要求我们在本地访问数据(该工作将专门在 Mapper 中完成).但是,我们确实希望在分发文件(提供可靠性和条带化)方面利用 HDFS.计算完成后,我们将使用 Reducer 简单地发回答案,而不是执行任何额外的工作.避免使用网络是一个明确的目标.是否有允许我们限制网络数据访问的配置设置,以便在启动 MapReduce 作业时它只会访问它的本地 Data
..
有人告诉我 count(distinct ) 可能会导致数据倾斜,因为只使用了一个 reducer. 我使用一个包含 50 亿条数据和 2 个查询的表进行了测试, 查询 A: 从 tableA 中选择 count(distinct columnA) 查询 B: 选择 count(columnA) from(从 tableA 中按 columnA 分组选择 columnA) 实际
..
洗牌阶段实际上做了什么? 可能性 - A 由于 shuffle 是将 mapper o/p 带到 reducer o/p 的过程,它只是根据 partitioner 中编写的代码将特定键从 mapper 带到特定的 reducer 例如.mapper 1 的 o/p 是 {a,1} {b,1} mapper 2的o/p是{a,1} {b,1} 在我的分区器中,我已经写
..
在我看来,可以编写 org.apache.hadoop.io.serializer.Serialization 来直接序列化 java 类型,其格式与包装类将类型序列化成的格式相同.这样,Mappers 和 Reducers 就不必处理包装类. 解决方案 没有什么可以阻止您更改序列化以使用不同的机制,例如 java Serializable 接口或诸如节俭、协议缓冲区等之类的东西.
..
我目前正在编写分布式应用程序,它在 Hadoop MapReduce 的帮助下解析 Pdf 文件.MapReduce 作业的输入是数千个 Pdf 文件(大部分范围从 100KB 到 ~2MB),输出是一组已解析的文本文件. 出于测试目的,最初我使用了 Tom White 的 Hadoop 中提供的 WholeFileInputFormat.Definitive Guide 书,提供单个文件到
..
我有点难以理解 Hadoop 中的数据,如何将数据放入地图和缩减功能.我知道我们可以定义输入格式和输出格式,然后定义输入和输出的键类型.但是举个例子,如果我们想要一个对象作为输入类型,Hadoop 在内部是如何做到的呢? 谢谢... 解决方案 您可以使用 Hadoop InputFormat 和 OutputFormat 接口来创建您的自定义格式..一个示例可以将 MapReduce
..
我开发了一个 map-reduce 程序.我编写了自定义 RecordReader 和 InputFormat 类. 我正在使用 MR Unit 和 Mockito 对 mapper 和 reducer 进行单元测试. 我想知道如何对自定义 RecordReader 和 InputFormat 类进行单元测试?测试这些类的首选方法是什么? 解决方案 感谢user7610
..
我正在尝试实现一个 MapReduce 作业,其中每个映射器将占用 150 行文本文件,并且所有映射器将同时运行;此外,无论有多少地图任务失败,它都不应该失败. 下面是配置部分: JobConf conf = new JobConf(Main.class);conf.setJobName("我的 mapreduce");conf.set("mapreduce.input.lineinpu
..
我正在使用 MapReduce 运行 RFM 分析程序.OutputKeyClass 是 Text.class,我从 Reducer 发出逗号分隔的 R(Recency)、F(频率)、M(Monetory)作为键,其中 R=BigInteger、F=Binteger、M=BigDecimal,并且值也是 Text代表 Customer_ID.我知道 Hadoop 根据键对输出进行排序,但我的最终结
..
我在 3 个集群上安装了 Hadoop 和 Hive.我可以从运行 HIVE 的集群节点登录到 hive. root@NODE_3 hive]# hive 使用配置初始化日志记录jar:文件:/usr/lib/hive/lib/hive-common-0.10.0-cdh4.2.0.jar!/hive-log4j.properties蜂巢历史文件=/tmp/root/hive_job_log
..
我想将来自同一个 reducer 的两种不同类型的输出写入两个不同的目录. 我可以使用 hadoop 中的多输出功能来写入不同的文件,但它们都进入同一个输出文件夹. 我想将同一个reduce中的每个文件写入不同的文件夹. 有没有办法做到这一点? 如果我尝试将例如“hello/testfile"作为第二个参数,它会显示无效参数.所以我无法写入不同的文件夹. 如果上述情况
..
我正在使用一个包含 4 个 MapReduce 步骤的程序.我第一步的输出是: id 值1 202 33 94 36 我有大约 1,000,000 个 ID,在第二步中我必须对值进行排序.这一步的输出: id 值4 361 203 92 3 如何在 map reduce 中对数据进行排序?我需要使用 terasort 吗?如果是,我如何在程序的第二步中使用 terasort?谢谢.
..
我正在尝试使用 spark over yarn(CentOS 上的 Cloudera Hadoop 5.2)运行一个简单的 Map/Reduce java 程序.我试过这两种不同的方法.第一种方式如下: YARN_CONF_DIR=/usr/lib/hadoop-yarn/etc/hadoop/;/var/tmp/spark/spark-1.4.0-bin-hadoop2.4/bin/spark
..
我的印象是,combiner 就像是作用于本地 map 任务的 reducer,即聚合单个 Map 任务的结果,以减少输出传输的网络带宽. 通过阅读 Hadoop- The权威指南第 3 版,我的理解似乎是正确的. 来自第 2 章(第 34 页) 组合函数许多 MapReduce 作业受到集群上可用带宽的限制,因此尽量减少在 map 和 reduce 任务之间传输的数据是值得的.
..
我正在使用它来删除重复的行 公共类 DLines{公共静态类 TokenCounterMapper 扩展 Mapper{私有最终静态 IntWritable one = new IntWritable(1);私人文本字=新文本();@覆盖公共无效映射(对象键,文本值,上下文上下文)抛出 IOException,Interrupte
..
hadoop 新手并尝试从 这里. 文档中的映射器是 - 映射器 我看到在mapreduce字数示例中,地图代码如下 public void map(Object key, Text value, Context context) 问题 - 这个 Object 类型的键有什么意义?如果映射器的输入是文本文档,我假设其中的值
..
我编写了一个简单的 map reduce 作业,它会从 DFS 中读取数据并在其上运行一个简单的算法.在尝试调试它时,我决定简单地让映射器输出一组键和值,而减速器输出完全不同的一组.我在单节点 Hadoop 20.2 集群上运行此作业.作业完成后,输出仅包含映射器输出的值,使我相信减速器没有运行.如果有人对我的代码为什么会产生这样的输出提供任何见解,我将不胜感激.我尝试将 outputKeyCla
..
我正在尝试使用 Amazon 的 Elastic Map Reduce 来处理 Google ngrams 数据集.http://aws.amazon.com/datasets/8172056142375670 有一个公共数据集,我想使用 Hadoop 流. 对于输入文件,它说“我们将数据集存储在 Amazon S3 中的单个对象中.该文件是具有块级 LZO 压缩的序列文件格式.序列文件键是
..
现在我有一个 4 阶段的 MapReduce 作业,如下所示: 输入->地图1->减少1 ->减速机2 ->减少3 ->减少4->输出 我注意到 Hadoop 中有一个 ChainMapper 类,它可以将多个映射器链接成一个大映射器,并节省映射阶段之间的磁盘 I/O 成本.还有一个 ChainReducer 类,但它不是真正的“Chain-Reducer".它只能支持以下工作: [Map+
..
尝试从 Apache Hadoop.运行 map reduce 作业时出现以下异常.试过 hdfs dfs -chmod 777/ 但这并没有解决问题. 15/03/10 13:13:10 WARN mapreduce.JobSubmitter:未执行 Hadoop 命令行选项解析.实现 Tool 接口并执行您的应用程序ToolRunner 来解决这个问题.15/03/10 13:13:10 W
..