当前位置: 首页 > 面试题库 >

hadoop映射器中对象类型的键

贾成天
2023-03-14
问题内容

hadoop的新手,并试图从此处了解mapreduce
wordcount示例代码。

文档中的映射器是-

Mapper<KEYIN,VALUEIN,KEYOUT,VALUEOUT>

我看到在mapreduce字数示例中,映射代码如下

public void map(Object key, Text value, Context context)

问题-
Object类型的此键的作用是什么?如果映射器的输入是文本文档,那么我假设其中的值将是hadoop已分区并存储在HDFS中的文本块(64MB或128MB)。
更一般而言,此输入键Keyin在地图代码中的用途是什么?

任何指针将不胜感激


问题答案:

InputFormat描述了Map-
Reduce作业的输入规范。默认情况下,hadoop使用TextInputFormat继承自的FileInputFormat来处理输入文件。

我们还可以指定在客户端或驱动程序代码中使用的输入格式:

job.setInputFormatClass(SomeInputFormat.class);

对于TextInputFormat文件分为几行。键是文件中的位置,值是文本行。

在中public void map(Object key, Text value, Context context) 是行偏移量,
是实际文本。

请查看TextInputFormat API
https://hadoop.apache.org/docs/current/api/org/apache/hadoop/mapreduce/lib/input/TextInputFormat.html

默认情况下,关键是LongWritable类型和价值类型是TextTextInputFormat你的榜样,对象类型在的地方。在指定的LongWritable,因为它是兼容的。您也可以使用LongWritabletype代替Object



 类似资料:
  • 我有很多实体扩展了实体,也有很多数据扩展到 我有一个通用的存储库、服务和映射器,如下所示 我的仓库: 我的服务: 我的地图绘制者: 我想在方法中从T创建一个对象,在类中从方法中从Dto创建一个对象

  • 我有两个需要映射的继承层次结构。一个层次结构是国内的,另一个是野生的。我有抽象的Domestic动物和具体的DomesticCat和DomesticDog扩展它。在第二个层次结构中,我有抽象的Wild动物和具体的WildCat和WildDog扩展它。我还有另外两个类,分别是WildAnimalFeeder具有Wild动物的成员对象和DomesticAnimalFeeder具有DomesticAni

  • 我正在编写一个映射函数,它将键生成为一些user_id,值也是文本类型。我是这样做的 然后,在主程序中,我将映射器的输出类设置为: 因此,即使我将输出值的类设置为text.class,但在编译时仍然会出现以下错误:

  • 我试图使用http://modelmapper.org/表示DAO和模型类的库- 模型类- 道类- 公共类主题{私有字符串名称; 映射逻辑 ModelMapper似乎不起作用,它给我提供了主题类项目,而不是主题模型类项目

  • 在对这个话题进行了大量的测试和研究之后,我无法完全解决我的问题。我正在springboot应用程序中使用modelmapper进行实体/DTO映射。我正在尝试配置modelmapper,将一个集合映射到一个简单的DTO对象。我已经创建了一个自定义转换器,它正在按预期工作: 我现在的问题是将此转换器应用于所有“集合”= 如果我直接在模型映射器中添加转换器,它就是不工作。 你对此有什么提示或解决办法吗

  • 你好,我正在尝试实现java hadoop应用程序。我想制作映射器 我在主类中有这样的配置: 在这里,我必须说将使用哪个输出键和输出值。有没有可能将其设置为 ok 对于映射器使用此输出键和值,但对于组合器使用不同的? 非常感谢您的回答