需求背景:提供一批卡号,去提取这批卡号的流水(lzo格式的交易流水)

模拟实现逻辑:

hadoop 二次排序join的实现大致流程图


​配置文件如下:

#!/bin/bash

hadoop fs -rmr card_match_2/output

hadoop jar ~/koulb/softjar/hadoop-streaming-2.0.0-mr1-cdh4.7.0.jar \

-D map.output.key.field.separator=_ \

-D num.key.fields.for.partition=1 \

-D stream.map.input.ignoreKey=true \

-partitioner org.apache.hadoop.mapred.lib.KeyFieldBasedPartitioner \

-inputformat com.hadoop.mapred.DeprecatedLzoTextInputFormat \

-input ${1} ${2}\

-output card_match_2/output \

-file map.py \

-file red.py \

-mapper "python map.py" \

-reducer "python red.py" \

-jobconf mapred.job.priority=VERY_HIGH \

-jobconf mapred.reduce.tasks=40 \

-jobconf mapred.job.name="card_match"


相关文章:

  • 2022-12-23
  • 2021-12-27
  • 2021-05-26
  • 2022-12-23
  • 2022-12-23
  • 2021-11-02
  • 2021-09-14
  • 2022-12-23
猜你喜欢
  • 2022-12-23
  • 2021-11-01
  • 2021-07-27
  • 2018-09-11
  • 2021-06-02
相关资源
相似解决方案