Below is the data
c1 p1 q1 d1
c2 p2 q2 d2
需要输出 - 如果客户已购买p1,则应提供flag as 1
否则应提供flag 0
。有数百万的客户和数百万的产品以下是所需的输出。对此的任何帮助都非常感谢。
c1 p1 q1 d1 1
c1 p2 q1 d1 0
c2 p2 q2 d2 1
c2 p1 q2 d2 0
答案 0 :(得分:0)
您只需使用mapside逻辑即可实现它,示例代码供您参考:
public void map(LongWritable key, Text value, Context context)
throws IOException, InterruptedException {
String line = value.toString();
NullWritable value = NullWritable.get();
String tokens[] = line.split("<your delim>");
if (tokens[1] == "p1") {
line = line + "<your delim>" + "1";
} else if (tokens[1] == "p2") {
line = line + "<your delim>" + "0";
}
context.write(newText(line), value);
}