- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在新的API(apache.hadoop.mapreduce.KeyValueTextInputFormat)中,如何指定除制表符(默认)之外的分隔符(定界符)来分隔键和值。
示例输入:
106298345|投降,Raja,CTS,50000,钦奈
106297845|穆拉里,巴拉,TCS,60000,钦奈
106291271|拉贾戈帕尔,拉维,CTS,50000,钦奈
106298616|维克拉姆,达玛,TCS,70000,钦奈
106299100|库马尔,塞尔瓦姆,TCS,90000,钦奈
106299288|桑迪普,克里希纳,CTS,10000,钦奈
106290071|Vimal,皮莱,TCS,20000,钦奈
我将 KeyValueTextInputFormat 指定为:
Configuration conf = new Configuration();
conf.set("mapreduce.input.keyvaluelinerecordreader.key.value.separator", "|");
Job myhadoopJob = new Job(conf);
我的映射器代码如下
import java.io.IOException;
import java.util.StringTokenizer;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapreduce.Mapper;
import org.apache.hadoop.mapreduce.Mapper.Context;
public class KeyValueMapper extends Mapper<Text, Text, Text, Text>
{
@Override
protected void map(Text key, Text value, Context context)throws IOException, InterruptedException {
String mapOutPutValue="";
String line = value.toString();
String[] details=line.split(",");
for(int i=0;i<details.length;i++)
{
if(details[i].equalsIgnoreCase("TCS"))
{
mapOutPutValue=line;
}
}if(mapOutPutValue!="")context.write(key, new Text(mapOutPutValue)); }
}
但是我的映射器类正在打印输入文件中的所有输出。我的映射器类没有按照映射方法中的逻辑过滤输入。
谁能帮我
最佳答案
请在驱动程序代码中尝试以下选项。
conf.set("key.value.separator.in.input.line", "|");
关于java - Driver 类中的 KeyValueTextInputFormat,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23822428/
在新的API(apache.hadoop.mapreduce.KeyValueTextInputFormat)中,如何指定除制表符(默认)之外的分隔符(定界符)来分隔键和值。 示例输入: 106298
我正在尝试读取包含以下格式行的文件。 100,1:2:3200,10:20:30 假设输入总是数字,我试图通过将输入键和值分别设置为 IntWritable 和 Text 来读取文件。但是当我运行它时
我使用 hadoop 1.0.1 做一些项目,我想让我的输入 .txt 文件成为“关键”并且我需要的“值(value)”,例如: 如果我有一个test.txt文件,文件内容是 1, 10 10 我想我
我的输入文件是这样的: Key1 : Value1,Value2 Ket2 : Value3,Value4 在映射器中,我想获得一个键,其中“:”是定界符。为此,我的代码是这样的: JobConf c
谁能给我一个我们必须使用 KeyValueTextInputFormat 和 TextInputFormat 的实际场景?? 最佳答案 TextInputFormat 类将源文件的每一行转换为键/值类
在新的 API (apache.hadoop.mapreduce.KeyValueTextInputFormat) 中,如何指定除制表符(默认)之外的分隔符(定界符)来分隔键和值。 示例输入: one
我是一名优秀的程序员,十分优秀!